[PATCH 0/2] [Natty SRU] kswapd consumes CPU during heavy I/O

Colin King colin.king at canonical.com
Fri Jun 17 10:06:51 UTC 2011


From: Colin Ian King <colin.king at canonical.com>

SRU Request:

System hangs have been observed when performing heavy I/O on
sandybridge systems with small memory footprints (for example,
less than 2GB of memory). kswapd consumes all the CPU and the
machine effectively becomes unusable because kswapd is missing
every cond_resched().  Also, we need to invert the logic in
commit 1741c877 ("mm: kswapd: keep kswapd awake for high-order
allocations until a percentage of the node is balanced") to
allow kswapd to go to sleep when balanced for high orders.

Testing involved multiply copying ~600MB of files from an install
image on a laptop with 2GB of memory. A 2.5 hour (150 iteration)
soak test cannot trip the hang with these patches, where as
without them the bug occurs in the first 5 to 30 iterations.

BugLink: http://bugs.launchpad.net/bugs/755066

Patches cherry-picked from upstream and are in GregKH's stable 2.6.38.8

Johannes Weiner (1):
  mm: vmscan: correct use of pgdat_balanced in sleeping_prematurely

Minchan Kim (1):
  mm: vmscan: correctly check if reclaimer should schedule during
    shrink_slab

 mm/vmscan.c |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)





More information about the kernel-team mailing list