On Thu, 21 Apr 2011 21:24:18 -0700 Ying Han <yinghan@xxxxxxxxxx> wrote: > This is the main loop of per-memcg background reclaim which is implemented in > function balance_mem_cgroup_pgdat(). > > The function performs a priority loop similar to global reclaim. During each > iteration it invokes balance_pgdat_node() for all nodes on the system, which > is another new function performs background reclaim per node. After reclaiming > each node, it checks mem_cgroup_watermark_ok() and breaks the priority loop if > it returns true. > > changelog v7..v6: > 1. change based on KAMAZAWA's patchset. Each memcg reclaims now reclaims > SWAP_CLUSTER_MAX of pages and putback the memcg to the tail of list. > memcg-kswapd will visit memcgs in round-robin manner and reduce usages. > > changelog v6..v5: > 1. add mem_cgroup_zone_reclaimable_pages() > 2. fix some comment style. > > changelog v5..v4: > 1. remove duplicate check on nodes_empty() > 2. add logic to check if the per-memcg lru is empty on the zone. > > changelog v4..v3: > 1. split the select_victim_node and zone_unreclaimable to a seperate patches > 2. remove the logic tries to do zone balancing. > > changelog v3..v2: > 1. change mz->all_unreclaimable to be boolean. > 2. define ZONE_RECLAIMABLE_RATE macro shared by zone and per-memcg reclaim. > 3. some more clean-up. > > changelog v2..v1: > 1. move the per-memcg per-zone clear_unreclaimable into uncharge stage. > 2. shared the kswapd_run/kswapd_stop for per-memcg and global background > reclaim. > 3. name the per-memcg memcg as "memcg-id" (css->id). And the global kswapd > keeps the same name. > 4. fix a race on kswapd_stop while the per-memcg-per-zone info could be accessed > after freeing. > 5. add the fairness in zonelist where memcg remember the last zone reclaimed > from. > > Signed-off-by: Ying Han <yinghan@xxxxxxxxxx> > Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> seems good. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx 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>