On Mon, Jan 23, 2012 at 12:47:34AM +0800, Hillf Danton wrote: > 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. It's not only possible, it's guaranteed: with the memory controller enabled, the global per-zone lru lists are empty. Pages used to be linked on the global per-zone AND the memcg per-zone lru lists. Nowadays, they only sit on the memcg per-zone lists, which is why global reclaim does a hierarchy walk. The global per-zone lists are just an artifact for when the memory controller is not available. The plan is to make root_mem_cgroup available at all times, even without the memory controller. So I'm afraid your patch only adds a round of scanning a known-to-be empty lruvec. NAK. -- 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>