From: Vlastimil Babka <vbabka@suse.cz>
To: Christoph Lameter <cl@linux.com>,
David Rientjes <rientjes@google.com>,
Joonsoo Kim <iamjoonsoo.kim@lge.com>,
Pekka Enberg <penberg@kernel.org>
Cc: Hyeonggon Yoo <42.hyeyoo@gmail.com>,
Roman Gushchin <roman.gushchin@linux.dev>,
Andrew Morton <akpm@linux-foundation.org>,
linux-mm@kvack.org, rcu@vger.kernel.org,
linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org,
patches@lists.linux.dev, linux-doc@vger.kernel.org,
Vlastimil Babka <vbabka@suse.cz>,
Frederic Weisbecker <frederic@kernel.org>,
Joel Fernandes <joel@joelfernandes.org>,
Jonathan Corbet <corbet@lwn.net>,
Josh Triplett <josh@joshtriplett.org>,
Lai Jiangshan <jiangshanlai@gmail.com>,
Lorenzo Stoakes <lstoakes@gmail.com>,
Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
Mike Rapoport <rppt@kernel.org>,
Neeraj Upadhyay <quic_neeraju@quicinc.com>,
"Paul E. McKenney" <paulmck@kernel.org>,
Steven Rostedt <rostedt@goodmis.org>
Subject: [PATCH v2 0/6] remove SLOB and allow kfree() with kmem_cache_alloc()
Date: Fri, 17 Mar 2023 11:43:01 +0100 [thread overview]
Message-ID: <20230317104307.29328-1-vbabka@suse.cz> (raw)
Also in git:
https://git.kernel.org/vbabka/h/slab-remove-slob-v2r1
Changes since v1:
https://lore.kernel.org/all/20230310103210.22372-1-vbabka@suse.cz/
- skbuff patch removed from the series as recommended by net folks
- fix up comments in fs/proc/page.c (Hyeonggon)
- removed an extra line in mm/Makefile that I missed (Mike)
- tweak the Documentation wording (Mike)
- added Acks/Reviews - thanks!
The SLOB allocator was deprecated in 6.2 so I think we can start
exposing the complete removal in for-next (already included as of today)
and aim at 6.4 if there are no complaints.
Besides code cleanup, the main immediate benefit will be allowing
kfree() family of function to work on kmem_cache_alloc() objects (Patch
6), which was incompatible with SLOB.
This includes kfree_rcu() so I've updated the comment there to remove
the mention of potential future addition of kmem_cache_free_rcu() as
there should be no need for that now.
Otherwise it's all straightforward removal. After this series, 'git
grep slob' or 'git grep SLOB' will have relevant hits in non-mm code:
- tomoyo - patch submitted and carried there, doesn't need to wait for
this series
- skbuff - patch to cleanup now-unnecessary #ifdefs will be posted to
netdev after this is merged, as requested, to avoid conflicts
- ftrace ring_buffer - patch to remove obsolete comment was submitted
The rest of 'git grep SLOB' hits are false positives, or intentional
(CREDITS, and mm/Kconfig SLUB_TINY description to help those that will
happen to migrate later).
Vlastimil Babka (6):
mm/slob: remove CONFIG_SLOB
mm, page_flags: remove PG_slob_free
mm, pagemap: remove SLOB and SLQB from comments and documentation
mm/slab: remove CONFIG_SLOB code from slab common code
mm/slob: remove slob.c
mm/slab: document kfree() as allowed for kmem_cache_alloc() objects
Documentation/admin-guide/mm/pagemap.rst | 6 +-
Documentation/core-api/memory-allocation.rst | 17 +-
fs/proc/page.c | 9 +-
include/linux/page-flags.h | 4 -
include/linux/rcupdate.h | 6 +-
include/linux/slab.h | 39 -
init/Kconfig | 2 +-
kernel/configs/tiny.config | 1 -
mm/Kconfig | 22 -
mm/Makefile | 2 -
mm/slab.h | 61 --
mm/slab_common.c | 7 +-
mm/slob.c | 757 -------------------
tools/mm/page-types.c | 6 +-
14 files changed, 27 insertions(+), 912 deletions(-)
delete mode 100644 mm/slob.c
--
2.39.2
next reply other threads:[~2023-03-17 10:43 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-03-17 10:43 Vlastimil Babka [this message]
2023-03-17 10:43 ` [PATCH v2 1/6] mm/slob: remove CONFIG_SLOB Vlastimil Babka
2023-03-17 11:49 ` Mike Rapoport
2023-03-17 10:43 ` [PATCH v2 2/6] mm, page_flags: remove PG_slob_free Vlastimil Babka
2023-03-17 11:50 ` Mike Rapoport
2023-03-17 10:43 ` [PATCH v2 3/6] mm, pagemap: remove SLOB and SLQB from comments and documentation Vlastimil Babka
2023-03-17 11:51 ` Mike Rapoport
2023-03-17 10:43 ` [PATCH v2 4/6] mm/slab: remove CONFIG_SLOB code from slab common code Vlastimil Babka
2023-03-17 11:51 ` Mike Rapoport
2023-03-17 10:43 ` [PATCH v2 5/6] mm/slob: remove slob.c Vlastimil Babka
2023-03-17 11:52 ` Mike Rapoport
2023-03-17 10:43 ` [PATCH v2 6/6] mm/slab: document kfree() as allowed for kmem_cache_alloc() objects Vlastimil Babka
2023-03-17 11:48 ` Mike Rapoport
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=20230317104307.29328-1-vbabka@suse.cz \
--to=vbabka@suse.cz \
--cc=42.hyeyoo@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=cl@linux.com \
--cc=corbet@lwn.net \
--cc=frederic@kernel.org \
--cc=iamjoonsoo.kim@lge.com \
--cc=jiangshanlai@gmail.com \
--cc=joel@joelfernandes.org \
--cc=josh@joshtriplett.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=lstoakes@gmail.com \
--cc=mathieu.desnoyers@efficios.com \
--cc=patches@lists.linux.dev \
--cc=paulmck@kernel.org \
--cc=penberg@kernel.org \
--cc=quic_neeraju@quicinc.com \
--cc=rcu@vger.kernel.org \
--cc=rientjes@google.com \
--cc=roman.gushchin@linux.dev \
--cc=rostedt@goodmis.org \
--cc=rppt@kernel.org \
/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