lkml.org 
[lkml]   [2009]   [Jun]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [GIT PULL v2] Early SLAB fixes for 2.6.31


On Tue, 16 Jun 2009, Christoph Lameter wrote:
> >
> > I'd rather get rid of the whole slab_is_available() thing entirely.
>
> slab_is_available is necessary for slab bootstrap but if we use
> system_state for this then its not necessary anymore.

Well, if it's purely internal to slab itself, then I don't care. It should
be made static inside mm/slab.c

> > IOW, we should strive for not having any code that is at all confused
> > about whether it can do slab allocations or not.
>
> So encode the stage of boot up in system_state? Maybe add documentation to
> explan what is possible at these states and what is not?

No.

I mean that there should never be any _need_ for dynamically querying
whether slab is available or not. Nothing should ever do it, because we
should strive for slab being available so early that anything that happens
before it _knows_ that it is special case code (eg "set up initial page
tables") and would never have any reason what-so-ever for even
conditionally asking "should I use slab".

So I literally mean "get rid of slab_is_available()" - and the fact that
SLAB itself _internally_ has some internal state is irrelevant (SLUB and
SLOB do not, for example).

Linus


\
 
 \ /
  Last update: 2009-10-18 23:28    [W:0.136 / U:0.536 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site