Re: [PATCH] mm: remove all the slab allocators

From: Christophe Leroy
Date: Sat Apr 01 2023 - 14:45:30 EST




Le 01/04/2023 à 20:33, David Laight a écrit :
> From: Vlastimil Babka
>> Sent: 32 March 2023 10:47
>>
>> As the SLOB removal is on track and the SLAB removal is planned, I have
>> realized - why should we stop there and not remove also SLUB? What's a
>> slab allocator good for in 2023? The RAM sizes are getting larger and
>> the modules cheaper [1]. The object constructor trick was perhaps
>> interesting in 1994, but not with contemporary CPUs. So all the slab
>> allocator does today is just adding an unnecessary layer of complexity
>> over the page allocator.
>
> Why stop there?
> Remove kmalloc() completely.
> With cheap memory isn't unreasonable to go back to compile-time
> settable fixed size arrays for all items.
> Should make 'use after free' much easier to track down.
>

While at it, why not also increase the page size to hugepage size, that
would allow us to remove all the complex THP logic, and would remove one
level of page tables. I would also reduce TLB pressure.

Christophe