[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <70448afd-cb53-478c-83fc-831c712e9a82@shopee.com>
Date: Mon, 8 Jan 2024 14:49:31 +0800
From: Haifeng Xu <haifeng.xu@...pee.com>
To: Roman Gushchin <roman.gushchin@...ux.dev>
Cc: akpm@...ux-foundation.org, hannes@...xchg.org, mhocko@...nel.org,
shakeelb@...gle.com, linux-mm@...ck.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 1/2] mm: list_lru: disable memcg_aware when cgroup.memory
is set to "nokmem"
On 2024/1/3 09:53, Roman Gushchin wrote:
> On Thu, Dec 28, 2023 at 06:27:14AM +0000, Haifeng Xu wrote:
>> Actually, when using a boot time kernel option "cgroup.memory=nokmem",
>> all lru items are inserted to list_lru_node. But for those users who
>> invoke list_lru_init_memcg() to initialize list_lru, list_lru_memcg_aware()
>> returns true. And this brings unneeded operations related to memcg.
>>
>> To make things more convenient, let's disable memcg_aware when
>> cgroup.memory is set to "nokmem".
>
> I guess it's not only more convenient, but also should save a bit of memory.
> But _probably_ not enough to justify messing up with stable backports.
> Do you have any data on memory savings?
Do you mean that it will remove the allocation of 'list_lru_memcg' in memcg_init_list_lru_one()?
In fact, even without this patch, if we set cgroup.memory set to "nokmem", all memcg's kmemcg_id is -1, so
memcg_list_lru_allocated() always returns true and we won't invoke memcg_init_list_lru_one().
>
>>
>> Signed-off-by: Haifeng Xu <haifeng.xu@...pee.com>
>
> Acked-by: Roman Gushchin <roman.gushchin@...ux.dev>
>
> Thanks!
Powered by blists - more mailing lists