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: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-31 22:20 Do we still need SLAB_MEM_SPREAD (and possibly others)? 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)
2024-02-06 1:46 ` Song, Xiongwei
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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.