[GIT PULL] slab updates for 7.2
From: Vlastimil Babka (SUSE)
Date: Mon Jun 15 2026 - 04:51:05 EST
Hi Linus,
please pull the latest slab updates from:
git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab.git tags/slab-for-7.2
One conflict was reported with the drm tree. The kmem_cache_alloc_bulk() call
we adjust has moved to a different function there:
https://lore.kernel.org/all/ahoZ7OCzxTAbGMtO@xxxxxxxxxxxxx/
Thanks,
Vlastimil
======================================
- Support for "allocation tokens" (currently available in Clang 22+) for
smarter partitioning of kmalloc caches based on the allocated object type,
which can be enabled instead of the "random" per-caller-address-hash
partitioning. It should be able to deterministically separate types containing
a pointer from those that do not. (Marco Elver)
- Improvements and simplification of the kmem_cache_alloc_bulk() and
mempool_alloc_bulk() API. This includes adaptation of callers.
(Christoph Hellwig)
- Performance improvements and cleanups related mostly to sheaves refill.
(Hao Li, Shengming Hu, Vlastimil Babka)
- Several fixups for the slabinfo tool. (Xuewen Wang)
----------------------------------------------------------------
The following changes since commit 5d6919055dec134de3c40167a490f33c74c12581:
Linux 7.1-rc3 (2026-05-10 14:08:09 -0700)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab.git tags/slab-for-7.2
for you to fetch changes up to dfdfd58cce1c3f5df8733b64595448996c08e424:
Merge branch 'slab/for-7.2/alloc_token' into slab/for-next (2026-06-12 11:25:12 +0200)
----------------------------------------------------------------
slab changes for 7.2
----------------------------------------------------------------
Christoph Hellwig (2):
mm/slab: improve kmem_cache_alloc_bulk
mm: simplify the mempool_alloc_bulk API
Hao Li (2):
mm/slub: introduce helpers for node partial slab state
mm/slub: detach and reattach partial slabs in batch
Marco Elver (3):
slab: support for compiler-assisted type-based slab cache partitioning
slab: improve KMALLOC_PARTITION_RANDOM randomness
slab: fix kernel-docs for mm-api
Shengming Hu (3):
mm/slub: defer freelist construction until after bulk allocation from a new slab
mm/slub: use empty sheaf helpers for oversized sheaves
mm/slub: preserve original size in _kmalloc_nolock_noprof retry path
Vlastimil Babka (SUSE) (7):
mm, slab: add an optimistic __slab_try_return_freelist()
mm, slab: simplify returning slab in __refill_objects_node()
MAINTAINERS: add slab-related scripts and tools to SLAB ALLOCATOR
mm/slab: do not limit zeroing to orig_size when only red zoning is enabled
Merge branch 'slab/for-7.2/tools' into slab/for-next
Merge branch 'slab/for-7.2/alloc_bulk' into slab/for-next
Merge branch 'slab/for-7.2/alloc_token' into slab/for-next
Wilson Zeng (1):
mm/slub: fix typo in sheaves comment
Xuewen Wang (3):
tools/mm/slabinfo: Fix trace disable logic inversion
tools/mm/slabinfo: remove dead assignment in get_obj_and_str()
tools/mm/slabinfo: remove redundant slab->partial assignment
MAINTAINERS | 6 +
Makefile | 5 +
block/blk-crypto-fallback.c | 9 +-
drivers/gpu/drm/msm/msm_iommu.c | 13 +-
drivers/gpu/drm/panthor/panthor_mmu.c | 13 +-
include/linux/instruction_pointer.h | 24 ++
include/linux/mempool.h | 2 +-
include/linux/percpu.h | 2 +-
include/linux/slab.h | 324 ++++++++++++----
init/Kconfig | 3 +
io_uring/io_uring.c | 23 +-
kernel/configs/hardening.config | 2 +-
lib/test_meminit.c | 23 +-
mm/Kconfig | 73 +++-
mm/kasan/kasan_test_c.c | 5 +-
mm/kfence/kfence_test.c | 13 +-
mm/mempool.c | 27 +-
mm/slab.h | 4 +-
mm/slab_common.c | 52 +--
mm/slub.c | 680 ++++++++++++++++------------------
net/bpf/test_run.c | 7 +-
net/core/skbuff.c | 24 +-
tools/include/linux/slab.h | 2 +-
tools/mm/slabinfo.c | 8 +-
tools/testing/shared/linux.c | 19 +-
25 files changed, 788 insertions(+), 575 deletions(-)