Re: [PATCH -tip] x86: uv - prevent NULL dereference in uv_system_init

Pekka Enberg
2009-05-03T09:59:25Z

Hi David,

On Sun, May 3, 2009 at 12:09 PM, David Rientjes <rientjes@google.com> wrote:
> SLUB stores two new slab allocation orders: the cache's adjustable order
> which is calculated at kmem_cache_create(), and the smallest order that
> can accommodate at least one object allocation.  The latter is used as a
> fallback when the former fails in the page allocator.
>
> So for __GFP_PANIC to work in this case, it could not be implemented in
> the page allocator (SLUB also passes __GFP_NORETRY for new slabs) but
> rather above it in allocate_slab().  It would then be a no-op for
> alloc_pages().

It's probably better to implement __GFP_PANIC in alloc_pages() because
of kmalloc_large(). You can easily mask the __GFP_PANIC from the first
call to alloc_slab_page() where we use __GFP_NOWARN to suppress
out-of-memory warnings.

But anyway, enough talk, show me the patch! :-)

Pekka