Message ID | 20230310103210.22372-2-vbabka@suse.cz (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | remove SLOB and allow kfree() with kmem_cache_alloc() | expand |
On Fri, Mar 10, 2023 at 11:32:03AM +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> > --- > init/Kconfig | 2 +- > kernel/configs/tiny.config | 1 - > mm/Kconfig | 22 ---------------------- > mm/Makefile | 1 - > 4 files changed, 1 insertion(+), 25 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..2d9c1e7f6085 100644 > --- a/mm/Makefile > +++ b/mm/Makefile > @@ -81,7 +81,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 With what Mike pointed: (removing 'mm/Makefile:KCOV_INSTRUMENT_slob.o := n') Acked-by: Hyeonggon Yoo <42.hyeyoo@gmail.com> > -- > 2.39.2 >
On Fri, Mar 10, 2023 at 11:32:03AM +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> > --- > init/Kconfig | 2 +- > kernel/configs/tiny.config | 1 - > mm/Kconfig | 22 ---------------------- > mm/Makefile | 1 - > 4 files changed, 1 insertion(+), 25 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..2d9c1e7f6085 100644 > --- a/mm/Makefile > +++ b/mm/Makefile > @@ -81,7 +81,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 > Looks good to me too, Acked-by: Lorenzo Stoakes <lstoakes@gmail.com>
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..2d9c1e7f6085 100644 --- a/mm/Makefile +++ b/mm/Makefile @@ -81,7 +81,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
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> --- init/Kconfig | 2 +- kernel/configs/tiny.config | 1 - mm/Kconfig | 22 ---------------------- mm/Makefile | 1 - 4 files changed, 1 insertion(+), 25 deletions(-)