Remove SLOB from Kconfig and Makefile. Everything under #ifdef
CONFIG_SLOB, and mm/slob.c is now dead code.
Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
Acked-by: Hyeonggon Yoo <42.hyeyoo@gmail.com>
Acked-by: Lorenzo Stoakes <lstoakes@gmail.com>
---
init/Kconfig | 2 +-
kernel/configs/tiny.config | 1 -
mm/Kconfig | 22 ----------------------
mm/Makefile | 2 --
4 files changed, 1 insertion(+), 26 deletions(-)
diff --git a/init/Kconfig b/init/Kconfig
index 1fb5f313d18f..72ac3f66bc27 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -973,7 +973,7 @@ config MEMCG
config MEMCG_KMEM
bool
- depends on MEMCG && !SLOB
+ depends on MEMCG
default y
config BLK_CGROUP
diff --git a/kernel/configs/tiny.config b/kernel/configs/tiny.config
index c2f9c912df1c..144b2bd86b14 100644
--- a/kernel/configs/tiny.config
+++ b/kernel/configs/tiny.config
@@ -7,6 +7,5 @@ CONFIG_KERNEL_XZ=y
# CONFIG_KERNEL_LZO is not set
# CONFIG_KERNEL_LZ4 is not set
# CONFIG_SLAB is not set
-# CONFIG_SLOB_DEPRECATED is not set
CONFIG_SLUB=y
CONFIG_SLUB_TINY=y
diff --git a/mm/Kconfig b/mm/Kconfig
index 4751031f3f05..669399ab693c 100644
--- a/mm/Kconfig
+++ b/mm/Kconfig
@@ -238,30 +238,8 @@ config SLUB
and has enhanced diagnostics. SLUB is the default choice for
a slab allocator.
-config SLOB_DEPRECATED
- depends on EXPERT
- bool "SLOB (Simple Allocator - DEPRECATED)"
- depends on !PREEMPT_RT
- help
- Deprecated and scheduled for removal in a few cycles. SLUB
- recommended as replacement. CONFIG_SLUB_TINY can be considered
- on systems with 16MB or less RAM.
-
- If you need SLOB to stay, please contact linux-mm@kvack.org and
- people listed in the SLAB ALLOCATOR section of MAINTAINERS file,
- with your use case.
-
- SLOB replaces the stock allocator with a drastically simpler
- allocator. SLOB is generally more space efficient but
- does not perform as well on large systems.
-
endchoice
-config SLOB
- bool
- default y
- depends on SLOB_DEPRECATED
-
config SLUB_TINY
bool "Configure SLUB for minimal memory footprint"
depends on SLUB && EXPERT
diff --git a/mm/Makefile b/mm/Makefile
index 8e105e5b3e29..e347958fc6b2 100644
--- a/mm/Makefile
+++ b/mm/Makefile
@@ -22,7 +22,6 @@ KCSAN_INSTRUMENT_BARRIERS := y
# flaky coverage that is not a function of syscall inputs. E.g. slab is out of
# free pages, or a task is migrated between nodes.
KCOV_INSTRUMENT_slab_common.o := n
-KCOV_INSTRUMENT_slob.o := n
KCOV_INSTRUMENT_slab.o := n
KCOV_INSTRUMENT_slub.o := n
KCOV_INSTRUMENT_page_alloc.o := n
@@ -81,7 +80,6 @@ obj-$(CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP) += hugetlb_vmemmap.o
obj-$(CONFIG_NUMA) += mempolicy.o
obj-$(CONFIG_SPARSEMEM) += sparse.o
obj-$(CONFIG_SPARSEMEM_VMEMMAP) += sparse-vmemmap.o
-obj-$(CONFIG_SLOB) += slob.o
obj-$(CONFIG_MMU_NOTIFIER) += mmu_notifier.o
obj-$(CONFIG_KSM) += ksm.o
obj-$(CONFIG_PAGE_POISONING) += page_poison.o
--
2.39.2
On Fri, Mar 17, 2023 at 11:43:02AM +0100, Vlastimil Babka wrote: > Remove SLOB from Kconfig and Makefile. Everything under #ifdef > CONFIG_SLOB, and mm/slob.c is now dead code. > > Signed-off-by: Vlastimil Babka <vbabka@suse.cz> > Acked-by: Hyeonggon Yoo <42.hyeyoo@gmail.com> > Acked-by: Lorenzo Stoakes <lstoakes@gmail.com> Acked-by: Mike Rapoport (IBM) <rppt@kernel.org> > --- > init/Kconfig | 2 +- > kernel/configs/tiny.config | 1 - > mm/Kconfig | 22 ---------------------- > mm/Makefile | 2 -- > 4 files changed, 1 insertion(+), 26 deletions(-) > > diff --git a/init/Kconfig b/init/Kconfig > index 1fb5f313d18f..72ac3f66bc27 100644 > --- a/init/Kconfig > +++ b/init/Kconfig > @@ -973,7 +973,7 @@ config MEMCG > > config MEMCG_KMEM > bool > - depends on MEMCG && !SLOB > + depends on MEMCG > default y > > config BLK_CGROUP > diff --git a/kernel/configs/tiny.config b/kernel/configs/tiny.config > index c2f9c912df1c..144b2bd86b14 100644 > --- a/kernel/configs/tiny.config > +++ b/kernel/configs/tiny.config > @@ -7,6 +7,5 @@ CONFIG_KERNEL_XZ=y > # CONFIG_KERNEL_LZO is not set > # CONFIG_KERNEL_LZ4 is not set > # CONFIG_SLAB is not set > -# CONFIG_SLOB_DEPRECATED is not set > CONFIG_SLUB=y > CONFIG_SLUB_TINY=y > diff --git a/mm/Kconfig b/mm/Kconfig > index 4751031f3f05..669399ab693c 100644 > --- a/mm/Kconfig > +++ b/mm/Kconfig > @@ -238,30 +238,8 @@ config SLUB > and has enhanced diagnostics. SLUB is the default choice for > a slab allocator. > > -config SLOB_DEPRECATED > - depends on EXPERT > - bool "SLOB (Simple Allocator - DEPRECATED)" > - depends on !PREEMPT_RT > - help > - Deprecated and scheduled for removal in a few cycles. SLUB > - recommended as replacement. CONFIG_SLUB_TINY can be considered > - on systems with 16MB or less RAM. > - > - If you need SLOB to stay, please contact linux-mm@kvack.org and > - people listed in the SLAB ALLOCATOR section of MAINTAINERS file, > - with your use case. > - > - SLOB replaces the stock allocator with a drastically simpler > - allocator. SLOB is generally more space efficient but > - does not perform as well on large systems. > - > endchoice > > -config SLOB > - bool > - default y > - depends on SLOB_DEPRECATED > - > config SLUB_TINY > bool "Configure SLUB for minimal memory footprint" > depends on SLUB && EXPERT > diff --git a/mm/Makefile b/mm/Makefile > index 8e105e5b3e29..e347958fc6b2 100644 > --- a/mm/Makefile > +++ b/mm/Makefile > @@ -22,7 +22,6 @@ KCSAN_INSTRUMENT_BARRIERS := y > # flaky coverage that is not a function of syscall inputs. E.g. slab is out of > # free pages, or a task is migrated between nodes. > KCOV_INSTRUMENT_slab_common.o := n > -KCOV_INSTRUMENT_slob.o := n > KCOV_INSTRUMENT_slab.o := n > KCOV_INSTRUMENT_slub.o := n > KCOV_INSTRUMENT_page_alloc.o := n > @@ -81,7 +80,6 @@ obj-$(CONFIG_HUGETLB_PAGE_OPTIMIZE_VMEMMAP) += hugetlb_vmemmap.o > obj-$(CONFIG_NUMA) += mempolicy.o > obj-$(CONFIG_SPARSEMEM) += sparse.o > obj-$(CONFIG_SPARSEMEM_VMEMMAP) += sparse-vmemmap.o > -obj-$(CONFIG_SLOB) += slob.o > obj-$(CONFIG_MMU_NOTIFIER) += mmu_notifier.o > obj-$(CONFIG_KSM) += ksm.o > obj-$(CONFIG_PAGE_POISONING) += page_poison.o > -- > 2.39.2 > -- Sincerely yours, Mike.
© 2016 - 2026 Red Hat, Inc.