Re: [PATCH] mm: memcontrol: fix the return in mem_cgroup_margin

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

 



On Wed 18-05-16 15:24:15, roy.qing.li@xxxxxxxxx wrote:
> From: Li RongQing <roy.qing.li@xxxxxxxxx>
> 
> when memory+swap is over limit, return 0
> 
> Signed-off-by: Li RongQing <roy.qing.li@xxxxxxxxx>
> ---
>  mm/memcontrol.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/mm/memcontrol.c b/mm/memcontrol.c
> index fe787f5..e9211c2 100644
> --- a/mm/memcontrol.c
> +++ b/mm/memcontrol.c
> @@ -1090,6 +1090,8 @@ static unsigned long mem_cgroup_margin(struct mem_cgroup *memcg)
>  		limit = READ_ONCE(memcg->memsw.limit);
>  		if (count <= limit)
>  			margin = min(margin, limit - count);
> +		else
> +			margin = 0;

count should always be smaller than memsw.limit (this is a hard limit).
Even if we have some temporary breach then the code should work as
expected because margin is initialized to 0 and memsw.limit >= limit.

Or have you seen any real problem with this code path?

-- 
Michal Hocko
SUSE Labs
--
To unsubscribe from this list: send the line "unsubscribe cgroups" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



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

  Powered by Linux