From: Christoph Lameter 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 Acked-by: Paul Jackson Signed-off-by: Andrew Morton --- mm/page_alloc.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletion(-) diff -puN mm/page_alloc.c~cpusets-only-wakeup-kswapd-for-zones-in-the-current-cpuset mm/page_alloc.c --- devel/mm/page_alloc.c~cpusets-only-wakeup-kswapd-for-zones-in-the-current-cpuset 2006-02-23 19:41:19.000000000 -0800 +++ devel-akpm/mm/page_alloc.c 2006-02-23 19:41:19.000000000 -0800 @@ -939,7 +939,8 @@ restart: goto got_pg; do { - wakeup_kswapd(*z, order); + if (cpuset_zone_allowed(*z, gfp_mask)) + wakeup_kswapd(*z, order); } while (*(++z)); /* _