Re: [GIT PULL v2] Early SLAB fixes for 2.6.31

From: Nick Piggin
Date: Wed Jun 17 2009 - 12:17:59 EST


On Wed, Jun 17, 2009 at 09:01:16AM -0700, Linus Torvalds wrote:
>
>
> On Wed, 17 Jun 2009, Nick Piggin wrote:
> >
> > In some cases perhaps it is difficult. In others it should be
> > pretty natural. Lots of memory allocating paths pass gfp
> > a long way down the stack.
>
> I agree that some cases would be pretty natural. In fact, that's what we
> started out doing. On the x86 side, we didn't have a lot of issues in
> testing, and we fixed them up by using GFP_NOWAIT (see for example
> cpupri_init() in kernel/sched_cpupri.c, or init_irq_default_affinity() in
> kernel/irq/handle.c - both of which were fixed up in that phase).
>
> Those paths, in fact, in general already had "bootmem" flags etc. And x86
> doesn't need to initialize a lot of state at bootup.

Yes.


> Then Ben happened, and crazy PPC ioremap crap.

OK. I agree ioremap probably would get painful. Are they doing that
too early anyway? From your email it sounds like maybe they are.


> So the problem is exactly that it was perfectly natural to pass down a gfp
> or other flag in _some_ cases. And then in a few cases it's much more
> painful.

Sure... I understand, and I don't want to force people to add
more nasty code to work around these. I am fine with the fix
to slab for now... I was just hoping maybe we don't put the
rule in place that all early boot allocations shall use GFP_KERNEL.
I'd like to see the allocation context passed down (including via
code that knows when interrupts are off in early boot) if possible
without ttoo much ugliness.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/