Re: [PATCH v2 0/3] cleanup of SLAB_ flags

From: Vlastimil Babka
Date: Mon Feb 26 2024 - 04:46:43 EST


On 2/23/24 19:27, Vlastimil Babka wrote:
> This started by the report that SLAB_MEM_SPREAD flag is dead (Patch 1).
> Then in the alloc profiling series we realized it's too easy to reuse an
> existing SLAB_ flag's value when defining a new one, by mistake.
> Thus let the compiler do that for us via a new helper enum (Patch 2).
> When checking if more flags are dead or could be removed, didn't spot
> any, but found out the SLAB_KASAN handling of preventing cache merging
> can be simplified since we now have an explicit SLAB_NO_MERGE (Patch 3).
>
> The SLAB_MEM_SPREAD flag is now marked as unused and for removal, and
> has a value of 0 so it's a no-op. Patches to remove its usage can/will
> be submitted to respective subsystems independently of this series - the
> flag is already dead as of v6.8-rc1 with SLAB removed. The removal of
> dead cpuset_do_slab_mem_spread() code can also be submitted
> independently.
>
> Signed-off-by: Vlastimil Babka <vbabka@xxxxxxx>

Pushed to slab/for-next

> ---
> Changes in v2:
> - Collect R-b, T-b (thanks!)
> - Unify all disabled flags's value to a sparse-happy zero with a new macro (lkp/sparse).
> - Rename __SF_BIT to __SLAB_FLAG_BIT (Roman Gushchin)
> - Rewrod kasan_cache_create() comment (Andrey Konovalov)
> - Link to v1: https://lore.kernel.org/r/20240220-slab-cleanup-flags-v1-0-e657e373944a@xxxxxxx
>
> ---
> Vlastimil Babka (3):
> mm, slab: deprecate SLAB_MEM_SPREAD flag
> mm, slab: use an enum to define SLAB_ cache creation flags
> mm, slab, kasan: replace kasan_never_merge() with SLAB_NO_MERGE
>
> include/linux/kasan.h | 6 ----
> include/linux/slab.h | 97 ++++++++++++++++++++++++++++++++++++---------------
> mm/kasan/generic.c | 22 ++++--------
> mm/slab.h | 1 -
> mm/slab_common.c | 2 +-
> mm/slub.c | 6 ++--
> 6 files changed, 79 insertions(+), 55 deletions(-)
> ---
> base-commit: 6613476e225e090cc9aad49be7fa504e290dd33d
> change-id: 20240219-slab-cleanup-flags-c864415ecc8e
>
> Best regards,