Re: Do we still need SLAB_MEM_SPREAD (and possibly others)?

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

 



On Wed, Jan 31, 2024 at 2:20 PM Steven Rostedt <rostedt@xxxxxxxxxxx> 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.





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

  Powered by Linux