Re: slab: setup allocators earlier in the boot sequence

Pekka Enberg
2009-06-12T13:52:35Z

Hi Christoph,

On Fri, 2009-06-12 at 09:49 -0400, Christoph Lameter wrote:
> Best thing to do is to recognize the fact that we are still in early boot
> in the allocators. Derived allocators (such as slab and vmalloc) mask bits
> using GFP_RECLAIM_MASK and when doing allocations through the page
> allocator. You could make GFP_RECLAIM_MASK a variable. During boot
> __GFP_WAIT would not be set in GFP_RECLAIM_MASK.

Ben's patch does something like that and I have patches that do that
floating around too.

The problem here is that it's not enough that we make GFP_RECLAIM_MASK a
variable. There are various _debugging checks_ that happen much earlier
than that. We need to mask out those too which adds overhead to
kmalloc() fastpath, for example.

Pekka