linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Michal Hocko <mhocko@kernel.org>
To: "Tobin C. Harding" <me@tobin.cc>
Cc: Vlastimil Babka <vbabka@suse.cz>,
	"Tobin C. Harding" <tobin@kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	Christoph Lameter <cl@linux.com>,
	Pekka Enberg <penberg@kernel.org>,
	David Rientjes <rientjes@google.com>,
	Joonsoo Kim <iamjoonsoo.kim@lge.com>, Tejun Heo <tj@kernel.org>,
	Qian Cai <cai@lca.pw>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org,
	Mel Gorman <mgorman@techsingularity.net>
Subject: Re: [PATCH 0/1] mm: Remove the SLAB allocator
Date: Thu, 11 Apr 2019 09:55:56 +0200	[thread overview]
Message-ID: <20190411075556.GO10383@dhcp22.suse.cz> (raw)
In-Reply-To: <20190410081618.GA25494@eros.localdomain>

On Wed 10-04-19 18:16:18, Tobin C. Harding wrote:
> On Wed, Apr 10, 2019 at 10:02:36AM +0200, Vlastimil Babka wrote:
> > 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 :)
> 
> Point noted.
> 
> > > 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.
> 
> Ok, so that probably already kills this.  Thanks for the response.  No
> flaming, no swearing, man! and they said LKML was a harsh environment ...
> 
> > IIRC last time Mel evaluated switching to SLUB, it wasn't a clear
> > winner, but I'll just CC him for details :)
> 
> Probably don't need to take up too much of Mel's time, if we have one
> user in production we have to keep it, right.

Well, I wouldn't be opposed to dropping SLAB. Especially when this is
not a longterm stable kmalloc implementation anymore. It turned out that
people want to push features from SLUB back to SLAB and then we are just
having two featurefull allocators and double the maintenance cost.

So as long as the performance gap is no longer there and the last data
from Mel (I am sorry but I cannot find a link handy) suggests that there
is no overall winner in benchmarks then why to keep them both?

That being said, if somebody is willing to go and benchmark both
allocators to confirm Mel's observations and current users of SLAB
can confirm their workloads do not regress either then let's just drop
it.

Please please have it more rigorous then what happened when SLUB was
forced to become a default
-- 
Michal Hocko
SUSE Labs


  reply	other threads:[~2019-04-11  7:56 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-10  2:47 Tobin C. Harding
2019-04-10  2:47 ` [PATCH 1/1] mm: Remove " Tobin C. Harding
2019-04-10  8:02 ` [PATCH 0/1] mm: Remove the " Vlastimil Babka
2019-04-10  8:16   ` Tobin C. Harding
2019-04-11  7:55     ` Michal Hocko [this message]
2019-04-11  8:27       ` Pekka Enberg
2019-04-17  8:50         ` Jesper Dangaard Brouer
2019-04-17 13:27           ` Christopher Lameter
2019-04-17 13:38           ` Michal Hocko
2019-04-22 14:43             ` Jesper Dangaard Brouer
2019-04-11  8:44       ` Mel Gorman
2019-04-10 21:53   ` David Rientjes
2019-04-12 11:28     ` Mel Gorman
2019-04-17  3:52       ` Andrew Morton

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190411075556.GO10383@dhcp22.suse.cz \
    --to=mhocko@kernel.org \
    --cc=akpm@linux-foundation.org \
    --cc=cai@lca.pw \
    --cc=cl@linux.com \
    --cc=iamjoonsoo.kim@lge.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=me@tobin.cc \
    --cc=mgorman@techsingularity.net \
    --cc=penberg@kernel.org \
    --cc=rientjes@google.com \
    --cc=tj@kernel.org \
    --cc=tobin@kernel.org \
    --cc=torvalds@linux-foundation.org \
    --cc=vbabka@suse.cz \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox