Re: [PATCH 1/2] mm: memcontrol: cleanup css_reset callback

From: Michal Hocko
Date: Tue Mar 01 2016 - 11:04:12 EST


On Tue 01-03-16 14:13:12, Vladimir Davydov wrote:
> - Do not take memcg_limit_mutex for resetting limits - the cgroup
> cannot be altered from userspace anymore, so no need to protect them.
>
> - Use plain page_counter_limit() for resetting ->memory and ->memsw
> limits instead of mem_cgrouop_resize_* helpers - we enlarge the
> limits, so no need in special handling.
>
> - Reset ->swap and ->tcpmem limits as well.
>
> Signed-off-by: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>

Acked-by: Michal Hocko <mhocko@xxxxxxxx>

> ---
> mm/memcontrol.c | 8 +++++---
> 1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/mm/memcontrol.c b/mm/memcontrol.c
> index ae8b81c55685..8615b066b642 100644
> --- a/mm/memcontrol.c
> +++ b/mm/memcontrol.c
> @@ -4257,9 +4257,11 @@ static void mem_cgroup_css_reset(struct cgroup_subsys_state *css)
> {
> struct mem_cgroup *memcg = mem_cgroup_from_css(css);
>
> - mem_cgroup_resize_limit(memcg, PAGE_COUNTER_MAX);
> - mem_cgroup_resize_memsw_limit(memcg, PAGE_COUNTER_MAX);
> - memcg_update_kmem_limit(memcg, PAGE_COUNTER_MAX);
> + page_counter_limit(&memcg->memory, PAGE_COUNTER_MAX);
> + page_counter_limit(&memcg->swap, PAGE_COUNTER_MAX);
> + page_counter_limit(&memcg->memsw, PAGE_COUNTER_MAX);
> + page_counter_limit(&memcg->kmem, PAGE_COUNTER_MAX);
> + page_counter_limit(&memcg->tcpmem, PAGE_COUNTER_MAX);
> memcg->low = 0;
> memcg->high = PAGE_COUNTER_MAX;
> memcg->soft_limit = PAGE_COUNTER_MAX;
> --
> 2.1.4

--
Michal Hocko
SUSE Labs