lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Wed, 10 Apr 2019 10:02:36 +0200
From:   Vlastimil Babka <vbabka@...e.cz>
To:     "Tobin C. Harding" <tobin@...nel.org>,
        Andrew Morton <akpm@...ux-foundation.org>
Cc:     Christoph Lameter <cl@...ux.com>,
        Pekka Enberg <penberg@...nel.org>,
        David Rientjes <rientjes@...gle.com>,
        Joonsoo Kim <iamjoonsoo.kim@....com>,
        Tejun Heo <tj@...nel.org>, Qian Cai <cai@....pw>,
        Linus Torvalds <torvalds@...ux-foundation.org>,
        linux-mm@...ck.org, linux-kernel@...r.kernel.org,
        Mel Gorman <mgorman@...hsingularity.net>
Subject: Re: [PATCH 0/1] mm: Remove the SLAB allocator

On 4/10/19 4:47 AM, Tobin C. Harding wrote:
> Recently a 2 year old bug was found in the SLAB allocator that crashes
> the kernel.  This seems to imply that not that many people are using the
> SLAB allocator.

AFAIK that bug required CONFIG_DEBUG_SLAB_LEAK, not just SLAB. That
seems to imply not that many people are using SLAB when debugging and
yeah, SLUB has better debugging support. But I wouldn't dare to make the
broader implication :)

> Currently we have 3 slab allocators.  Two is company three is a crowd -
> let's get rid of one. 
> 
>  - The SLUB allocator has been the default since 2.6.23

Yeah, with a sophisticated reasoning :)
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a0acd820807680d2ccc4ef3448387fcdbf152c73

>  - The SLOB allocator is kinda sexy.  Its only 664 LOC, the general
>    design is outlined in KnR, and there is an optimisation taken from
>    Knuth - say no more.
> 
> If you are using the SLAB allocator please speak now or forever hold your peace ...

FWIW, our enterprise kernel use it (latest is 4.12 based), and openSUSE
kernels as well (with openSUSE Tumbleweed that includes latest
kernel.org stables). AFAIK we don't enable SLAB_DEBUG even in general
debug kernel flavours as it's just too slow.

IIRC last time Mel evaluated switching to SLUB, it wasn't a clear
winner, but I'll just CC him for details :)

> Testing:
> 
> Build kernel with `make defconfig` (on x86_64 machine) followed by `make
> kvmconfig`.  Then do the same and manually select SLOB.  Boot both
> kernels in Qemu.
> 
> 
> thanks,
> Tobin.
> 
> 
> Tobin C. Harding (1):
>   mm: Remove SLAB allocator
> 
>  include/linux/slab.h |   26 -
>  kernel/cpu.c         |    5 -
>  mm/slab.c            | 4493 ------------------------------------------
>  mm/slab.h            |   31 +-
>  mm/slab_common.c     |   20 +-
>  5 files changed, 5 insertions(+), 4570 deletions(-)
>  delete mode 100644 mm/slab.c
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ