aboutsummaryrefslogtreecommitdiffstats
path: root/mm
diff options
context:
space:
mode:
authorChristoph Lameter <clameter@engr.sgi.com>2006-03-24 06:15:59 -0500
committerLinus Torvalds <torvalds@g5.osdl.org>2006-03-24 10:33:22 -0500
commit0b1303fcf23678ee1785841fb0c770a35cd0833c (patch)
tree78b90c2766f8468b39363bd4525ebaa9b192aa8f /mm
parent95c3832272fc77ea3e31f6382f82ba17be985cc7 (diff)
[PATCH] cpusets: only wakeup kswapd for zones in the current cpuset
If we get under some memory pressure in a cpuset (we only scan zones that are in the cpuset for memory) then kswapd is woken up for all zones. This patch only wakes up kswapd in zones that are part of the current cpuset. Signed-off-by: Christoph Lameter <clameter@sgi.com> Acked-by: Paul Jackson <pj@sgi.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'mm')
-rw-r--r--mm/page_alloc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index b7f14a4799a5..a5c3f8bd98ae 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -943,7 +943,8 @@ restart:
943 goto got_pg; 943 goto got_pg;
944 944
945 do { 945 do {
946 wakeup_kswapd(*z, order); 946 if (cpuset_zone_allowed(*z, gfp_mask))
947 wakeup_kswapd(*z, order);
947 } while (*(++z)); 948 } while (*(++z));
948 949
949 /* 950 /*