[GIT PULL] slab updates for 6.9

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

 



Hi Linus,

please pull the latest slab updates from:

  git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab.git tags/slab-for-6.9

I'm not aware of any merge conflicts this time.

Thanks,
Vlastimil

======================================

- Freelist loading optimization (Chengming Zhou)

  When the per-cpu slab is depleted and a new one loaded from the cpu partial
  list, optimize the loading to avoid an irq enable/disable cycle. This results
  in a 3.5% performance improvement on the "perf bench sched messaging" test.

- Kernel boot parameters cleanup after SLAB removal (Xiongwei Song)

  Due to two different main slab implementations we've had boot parameters
  prefixed either slab_ and slub_ with some later becoming an alias as both
  implementations gained the same functionality (i.e. slab_nomerge vs
  slub_nomerge). In order to eventually get rid of the implementation-specific
  names, the canonical and documented parameters are now all prefixed slab_
  and the slub_ variants become deprecated but still working aliases.

- SLAB_ kmem_cache creation flags cleanup (Vlastimil Babka)

  The flags had hardcoded #define values which became tedious and error-prone
  when adding new ones. Assign the values via an enum that takes care of
  providing unique bit numbers. Also deprecate SLAB_MEM_SPREAD which was only
  used by SLAB, so it's a no-op since SLAB removal. Assign it an explicit zero
  value.  The removals of the flag usage are handled independently in the
  respective subsystems, with a final removal of any leftover usage planned
  for the next release.

- Misc cleanups and fixes (Chengming Zhou, Xiaolei Wang, Zheng Yejian)

  Includes removal of unused code or function parameters and a fix of a
  memleak.

----------------------------------------------------------------
Chengming Zhou (7):
      mm/slub: directly load freelist from cpu partial slab in the likely case
      mm/slub: remove full list manipulation for non-debug slab
      mm/slub: remove unused parameter in next_freelist_entry()
      mm, slab: remove unused object_size parameter in kmem_cache_flags()
      mm, slab: fix the comment of cpu partial list
      mm, slab: remove the corner case of inc_slabs_node()
      slab: remove PARTIAL_NODE slab_state

Vlastimil Babka (6):
      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
      mm, slab: remove memcg_from_slab_obj()
      Merge branch 'slab/for-6.9/optimize-get-freelist' into slab/for-linus
      Merge branch 'slab/for-6.9/slab-flag-cleanups' into slab/for-linus

Xiaolei Wang (1):
      mm/slab: Fix a kmemleak in kmem_cache_destroy()

Xiongwei Song (4):
      Documentation: kernel-parameters: remove noaliencache
      mm/slub: unify all sl[au]b parameters with "slab_$param"
      mm/slub: replace slub_$params with slab_$params in slub.rst
      mm/slub: make the description of slab_min_objects helpful in doc

Zheng Yejian (1):
      mm/slub: remove parameter 'flags' in create_kmalloc_caches()

 Documentation/admin-guide/kernel-parameters.txt |  75 +++++++--------
 Documentation/mm/slub.rst                       |  60 ++++++------
 drivers/misc/lkdtm/heap.c                       |   2 +-
 include/linux/kasan.h                           |   6 --
 include/linux/slab.h                            |  97 ++++++++++++++------
 mm/Kconfig.debug                                |   6 +-
 mm/kasan/generic.c                              |  22 ++---
 mm/slab.h                                       |  11 +--
 mm/slab_common.c                                |  29 +++---
 mm/slub.c                                       | 116 ++++++++++--------------
 tools/include/linux/slab.h                      |   1 -
 11 files changed, 210 insertions(+), 215 deletions(-)




[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