From: Chengming Zhou <chengming.zhou@linux.dev>
To: Vlastimil Babka <vbabka@suse.cz>,
Yosry Ahmed <yosryahmed@google.com>,
Steven Rostedt <rostedt@goodmis.org>
Cc: LKML <linux-kernel@vger.kernel.org>,
linux-mm@kvack.org, Andrew Morton <akpm@linux-foundation.org>,
Linus Torvalds <torvalds@linux-foundation.org>,
Kees Cook <keescook@chromium.org>,
Christoph Lameter <cl@linux.com>,
David Rientjes <rientjes@google.com>,
Hyeonggon Yoo <42.hyeyoo@gmail.com>,
Xiongwei Song <xiongwei.song@windriver.com>,
Chengming Zhou <zhouchengming@bytedance.com>,
Zheng Yejian <zhengyejian1@huawei.com>
Subject: Re: Do we still need SLAB_MEM_SPREAD (and possibly others)?
Date: Thu, 1 Feb 2024 14:27:23 +0800 [thread overview]
Message-ID: <698633db-b066-4f75-b201-7b785819277b@linux.dev> (raw)
In-Reply-To: <61af19ca-5f9a-40da-a04d-b04ed27b8754@suse.cz>
On 2024/2/1 06:40, Vlastimil Babka wrote:
> On 1/31/24 23:25, Yosry Ahmed wrote:
>> On Wed, Jan 31, 2024 at 2:20 PM Steven Rostedt <rostedt@goodmis.org> wrote:
>>>
>>> I was looking into moving eventfs_inode into a slab, and after cutting and
>>> pasting the tracefs allocator:
>>>
>>> tracefs_inode_cachep = kmem_cache_create("tracefs_inode_cache",
>>> sizeof(struct tracefs_inode),
>>> 0, (SLAB_RECLAIM_ACCOUNT|
>>> SLAB_MEM_SPREAD|
>>> SLAB_ACCOUNT),
>>> init_once);
>>>
>>> I figured I should know what those slab flags mean. I also looked at what
>>> others in fs use for their slabs. The above is rather common (which I
>>> probably just copied from another file system), but I wanted to know what
>>> they are for.
>>>
>>> When I got to SLAB_MEM_SPREAD, I found that it's a common flag and there's
>>> a lot of caches that just set that and nothing else.
>>>
>>> But I couldn't find how it was used.
>>>
>>> Then I found this commit:
>>>
>>> 16a1d968358a ("mm/slab: remove mm/slab.c and slab_def.h")
>>>
>>> Which I think removed the only use case of SLAB_MEM_SPREAD.
>>>
>>> $ git grep SLAB_MEM_SPREAD mm
>>> mm/slab.h: SLAB_MEM_SPREAD | \
>>>
>>> That's all I find in the mm directory.
>>>
>>> Is it obsolete now? Can we delete it? Maybe there's other SLAB_* flags that
>>> are no longer used. I don't know, I haven't audited them.
>>
>> Perhaps cpuset_do_slab_mem_spread() as well.
>
> Yep, good find. Show how obscure mm/slab.c was in the end :)
>
> CCing a few more new people who did slab changes recently, who'd like some
> low hanging fruit of negative diffcount? :)
Thanks for CCing, I can prepare the patch to do it. IIUC, what I need to do is:
1. delete SLAB_MEM_SPREAD and all its uses.
2. cpuset_do_slab_mem_spread() is not used anymore, should we keep the interface?
Since it's the interface exported by cgroup-v1 "cpuset.memory_spread_slab".
next prev parent reply other threads:[~2024-02-01 6:27 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-31 22:20 Steven Rostedt
2024-01-31 22:25 ` Yosry Ahmed
2024-01-31 22:40 ` Vlastimil Babka
2024-02-01 6:27 ` Chengming Zhou [this message]
2024-02-04 2:06 ` Song, Xiongwei
2024-02-05 17:50 ` Christoph Lameter (Ampere)
[not found] ` <PH0PR11MB5192FC6A7AA3CB84BA3BC7E6EC462@PH0PR11MB5192.namprd11.prod.outlook.com>
2024-02-06 3:16 ` Waiman Long
2024-02-06 3:20 ` Waiman Long
2024-02-06 3:25 ` Chengming Zhou
2024-02-06 3:34 ` Waiman Long
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=698633db-b066-4f75-b201-7b785819277b@linux.dev \
--to=chengming.zhou@linux.dev \
--cc=42.hyeyoo@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=cl@linux.com \
--cc=keescook@chromium.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=rientjes@google.com \
--cc=rostedt@goodmis.org \
--cc=torvalds@linux-foundation.org \
--cc=vbabka@suse.cz \
--cc=xiongwei.song@windriver.com \
--cc=yosryahmed@google.com \
--cc=zhengyejian1@huawei.com \
--cc=zhouchengming@bytedance.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox