Hi all For easy review, it is re-prepared based on 3.3-rc1. Thanks Hillf ===cut please=== From: Hillf Danton <dhillf@xxxxxxxxx> Subject: [PATCH] mm: vmscan: ensure reclaiming pages on the lru lists of zone While iterating over memory cgroup hierarchy, pages are reclaimed from each mem cgroup, and reclaim terminates after a full round-trip. It is possible that no pages on the lru lists of given zone are reclaimed, as termination is checked after the reclaiming function. Mem cgroup iteration is rearranged a bit to make sure that pages are reclaimed from both mem cgroups and zone. Signed-off-by: Hillf Danton <dhillf@xxxxxxxxx> --- --- a/mm/vmscan.c Mon Jan 23 00:23:10 2012 +++ b/mm/vmscan.c Mon Jan 23 00:26:44 2012 @@ -2142,14 +2142,14 @@ static void shrink_zone(int priority, st .zone = zone, .priority = priority, }; - struct mem_cgroup *memcg; + struct mem_cgroup_zone mz = { + .zone = zone, + }; + struct mem_cgroup *memcg = NULL; - memcg = mem_cgroup_iter(root, NULL, &reclaim); do { - struct mem_cgroup_zone mz = { - .mem_cgroup = memcg, - .zone = zone, - }; + memcg = mem_cgroup_iter(root, memcg, &reclaim); + mz.mem_cgroup = memcg; shrink_mem_cgroup_zone(priority, &mz, sc); /* @@ -2166,7 +2166,6 @@ static void shrink_zone(int priority, st mem_cgroup_iter_break(root, memcg); break; } - memcg = mem_cgroup_iter(root, memcg, &reclaim); } while (memcg); } -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>