On Fri, Feb 05, 2016 at 12:58:21PM +0300, Vladimir Davydov wrote: > @@ -2745,14 +2745,20 @@ static void tree_events(struct mem_cgroup *memcg, unsigned long *events) > > static unsigned long mem_cgroup_usage(struct mem_cgroup *memcg, bool swap) > { > - unsigned long stat[MEMCG_NR_STAT]; > - unsigned long val; > + unsigned long val = 0; > > if (mem_cgroup_is_root(memcg)) { > - tree_stat(memcg, stat); > - val = stat[MEM_CGROUP_STAT_CACHE] + stat[MEM_CGROUP_STAT_RSS]; > - if (swap) > - val += stat[MEM_CGROUP_STAT_SWAP]; > + struct mem_cgroup *iter; > + > + for_each_mem_cgroup_tree(iter, memcg) { > + val += mem_cgroup_read_stat(iter, > + MEM_CGROUP_STAT_CACHE); > + val += mem_cgroup_read_stat(iter, > + MEM_CGROUP_STAT_RSS); > + if (swap) > + val += mem_cgroup_read_stat(iter, > + MEM_CGROUP_STAT_SWAP); > + } > } else { > if (!swap) > val = page_counter_read(&memcg->memory); Looks good to me, thanks. -- 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/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>