From: Vlastimil Babka <vbabka@suse.cz>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: David Rientjes <rientjes@google.com>,
Joonsoo Kim <iamjoonsoo.kim@lge.com>,
Christoph Lameter <cl@linux.com>,
Pekka Enberg <penberg@kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
"linux-mm@kvack.org" <linux-mm@kvack.org>,
LKML <linux-kernel@vger.kernel.org>,
patches@lists.linux.dev,
Roman Gushchin <roman.gushchin@linux.dev>,
Hyeonggon Yoo <42.hyeyoo@gmail.com>,
Chengming Zhou <chengming.zhou@linux.dev>,
Xiongwei Song <xiongwei.song@windriver.com>
Subject: [GIT PULL] slab updates for 6.9
Date: Tue, 12 Mar 2024 10:55:33 +0100 [thread overview]
Message-ID: <c021631d-29e5-432f-bfcd-1d75ec28d065@suse.cz> (raw)
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(-)
next reply other threads:[~2024-03-12 9:55 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-12 9:55 Vlastimil Babka [this message]
2024-03-13 3:54 ` Linus Torvalds
2024-03-13 5:10 ` Chengming Zhou
2024-03-13 9:28 ` Vlastimil Babka
2024-03-13 4:11 ` pr-tracker-bot
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=c021631d-29e5-432f-bfcd-1d75ec28d065@suse.cz \
--to=vbabka@suse.cz \
--cc=42.hyeyoo@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=chengming.zhou@linux.dev \
--cc=cl@linux.com \
--cc=iamjoonsoo.kim@lge.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=patches@lists.linux.dev \
--cc=penberg@kernel.org \
--cc=rientjes@google.com \
--cc=roman.gushchin@linux.dev \
--cc=torvalds@linux-foundation.org \
--cc=xiongwei.song@windriver.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox