Re: [PATCH 1/3] mm: memcontrol: make tree_{stat,events} fetch all stats

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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>



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]