[PATCH 12/12] mm, slob: rename CONFIG_SLOB to CONFIG_SLOB_DEPRECATED

Vlastimil Babka vbabka at suse.cz
Mon Nov 21 11:42:53 PST 2022


On 11/21/22 18:12, Vlastimil Babka wrote:
> As explained in [1], we would like to remove SLOB if possible.
> 
> - There are no known users that need its somewhat lower memory footprint
>    so much that they cannot handle SLUB (after some modifications by the
>    previous patches) instead.
> 
> - It is an extra maintenance burden, and a number of features are
>    incompatible with it.
> 
> - It blocks the API improvement of allowing kfree() on objects allocated
>    via kmem_cache_alloc().
> 
> As the first step, rename the CONFIG_SLOB option in the slab allocator
> configuration choice to CONFIG_SLOB_DEPRECATED. Add CONFIG_SLOB
> depending on CONFIG_SLOB_DEPRECATED as an internal option to avoid code
> churn. This will cause existing .config files and defconfigs with
> CONFIG_SLOB=y to silently switch to the default (and recommended
> replacement) SLUB, while still allowing SLOB to be configured by anyone
> that notices and needs it. But those should contact the slab maintainers
> and linux-mm at kvack.org as explained in the updated help. With no valid
> objections, the plan is to update the existing defconfigs to SLUB and
> remove SLOB in a few cycles.
> 
> To make SLUB more suitable replacement for SLOB, a CONFIG_SLUB_TINY
> option was introduced to limit SLUB's memory overhead.
> There is a number of defconfigs specifying CONFIG_SLOB=y. As part of
> this patch, update them to select CONFIG_SLUB and CONFIG_SLUB_TINY.

Hm I forgot - some of those defconfigs might not actually be for so tiny 
devices to need CONFIG_SLUB_TINY (or SLOB previously). For those it 
would make more sense to simply remove CONFIG_SLOB=y and leave it to the 
default choice, which is SLUB (without _TINY). Feel free to point those 
out to me and I'll adjust. Thanks.

> [1] https://lore.kernel.org/all/b35c3f82-f67b-2103-7d82-7a7ba7521439@suse.cz/
> 
> Cc: Russell King <linux at armlinux.org.uk>
> Cc: Aaro Koskinen <aaro.koskinen at iki.fi>
> Cc: Janusz Krzysztofik <jmkrzyszt at gmail.com>
> Cc: Tony Lindgren <tony at atomide.com>
> Cc: Jonas Bonn <jonas at southpole.se>
> Cc: Stefan Kristiansson <stefan.kristiansson at saunalahti.fi>
> Cc: Stafford Horne <shorne at gmail.com>
> Cc: Yoshinori Sato <ysato at users.sourceforge.jp>
> Cc: Rich Felker <dalias at libc.org>
> Cc: Arnd Bergmann <arnd at arndb.de>
> Cc: Josh Triplett <josh at joshtriplett.org>
> Cc: Conor Dooley <conor at kernel.org>
> Cc: Damien Le Moal <damien.lemoal at opensource.wdc.com>
> Cc: Christophe Leroy <christophe.leroy at csgroup.eu>
> Cc: Geert Uytterhoeven <geert at linux-m68k.org>
> Cc: <linux-arm-kernel at lists.infradead.org>
> Cc: <linux-omap at vger.kernel.org>
> Cc: <openrisc at lists.librecores.org>
> Cc: <linux-riscv at lists.infradead.org>
> Cc: <linux-sh at vger.kernel.org>
> Signed-off-by: Vlastimil Babka <vbabka at suse.cz>




More information about the linux-riscv mailing list