Re: [patch v2 3/6] memcg: rework mem_cgroup_iter to use cgroup iterators
From: Michal Hocko <hidden>
Date: 2012-12-14 12:07:11
Also in:
lkml
On Thu 13-12-12 17:14:13, Ying Han wrote: [...]
quoted hunk ↗ jump to hunk
I haven't tried this patch set yet. Before I am doing that, I am curious whether changing the target reclaim to be consistent with global reclaim something worthy to consider based my last reply:diff --git a/mm/vmscan.c b/mm/vmscan.c index 53dcde9..3f158c5 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c@@ -1911,20 +1911,6 @@ static void shrink_zone(struct zone *zone,struct scan_control *sc) shrink_lruvec(lruvec, sc); - /* - * Limit reclaim has historically picked one memcg and - * scanned it with decreasing priority levels until - * nr_to_reclaim had been reclaimed. This priority - * cycle is thus over after a single memcg. - * - * Direct reclaim and kswapd, on the other hand, have - * to scan all memory cgroups to fulfill the overall - * scan target for the zone. - */ - if (!global_reclaim(sc)) { - mem_cgroup_iter_break(root, memcg); - break; - } memcg = mem_cgroup_iter(root, memcg, &reclaim);
This wouldn't work because you would over-reclaim proportionally to the number of groups in the hierarchy.
} while (memcg); } --Ying
-- Michal Hocko SUSE Labs -- 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>