linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Nalorokk <nalorokk@gmail.com>
To: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>,
	Stefan Strogin <s.strogin@partner.samsung.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Sasha Levin <sasha.levin@oracle.com>,
	Mel Gorman <mgorman@techsingularity.net>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org,
	oleksandr@natalenko.name
Subject: Fwd: [REGRESSION] [BISECTED] kswapd high CPU usage
Date: Fri, 22 Jan 2016 00:37:07 +1000	[thread overview]
Message-ID: <CAPKbV48YOF4OSMqWpeUUM6MPGCXG5NSgVTc51cmd28UZO_f3vw@mail.gmail.com> (raw)
In-Reply-To: <CAPKbV49wfVWqwdgNu9xBnXju-4704t2QF97C+6t3aff_8bVbdA@mail.gmail.com>

It appears that kernels newer than 4.1 have kswapd-related bug
resulting in high CPU usage. CPU 100% usage could last for several
minutes or several days, with CPU being busy entirely with serving
kswapd. It happens usually after server being mostly idle, sometimes
after days, sometimes after weeks of uptime. But the issue appears
much sooner if the machine is loaded with something like building a
kernel.

Here are the graphs of CPU load: first [1], second [2]. Perf top
output is here [3] as well.

To find the cause of this problem I've started with the fact that the
issue appeared after 4.1 kernel update. Then I performed longterm test
of 3.18, and discovered that 3.18 is unaffected by this bug. Then I
did some tests of 4.0 to confirm that this version behaves well too.

Then I performed git bisect from tag v4.0 to v4.1-rc1 and found exact
commits that seem to be reason of high CPU usage.

The first really "bad" commit is
79553da293d38d63097278de13e28a3b371f43c1. 2 previous commits cause
weird behavior as well resulting in kswapd consuming more CPU than
unaffected kernels, but not that much as the commit pointed above. I
believe those commits are related to the same mm tree merge.

I tried to add transparent_hugepage=never to kernel boot parameters,
but it did not change anything. Changing allocator to SLAB from SLUB
alters behavior and makes CPU load lower, but don't solve a problem at
all.

Here [4] is kernel bugzilla bugreport as well.

Ideas?

[1] http://i.piccy.info/i9/9ee6c0620c9481a974908484b2a52a0f/1453384595/44012/994698/cpu_month.png
[2] http://i.piccy.info/i9/7c97c2f39620bb9d7ea93096312dbbb6/1453384649/41222/994698/cpu_year.png
[3] http://pastebin.com/aRzTjb2x
[4] https://bugzilla.kernel.org/show_bug.cgi?id=110501

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2016-01-21 14:37 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-21 14:28 [REGRESSION] [BISECTED] kswapd high CPU usage Nalorokk
2016-01-21 14:37 ` Nalorokk [this message]
2016-01-21 16:16 ` Kirill A. Shutemov
2016-01-23 15:57   ` Hugh Greenberg
2016-01-25 10:38     ` Kirill A. Shutemov
2016-01-25 16:37       ` Hugh Greenberg
2016-01-25 16:46       ` Hugh Greenberg
2016-02-02 13:59         ` Kirill A. Shutemov
2016-02-02 14:41           ` Sergey Senozhatsky
2016-02-02 16:24           ` Minchan Kim
2016-03-14 16:00           ` Hugh Greenberg
2016-03-14 16:07           ` Hugh Greenberg
2016-03-15 17:16           ` Hugh Greenberg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAPKbV48YOF4OSMqWpeUUM6MPGCXG5NSgVTc51cmd28UZO_f3vw@mail.gmail.com \
    --to=nalorokk@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=kirill.shutemov@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mgorman@techsingularity.net \
    --cc=oleksandr@natalenko.name \
    --cc=s.strogin@partner.samsung.com \
    --cc=sasha.levin@oracle.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).