Re: [Bug #13319] Page allocation failures with b43 and p54usb

Pekka J Enberg
2009-06-08T13:58:10Z

Hi Mel,

On Mon, 8 Jun 2009, Mel Gorman wrote:
> Is there any chance you could hatchet together a patch
> slab-allocation-failure that reports on slab allocation failures similar
> to what the page allocator does? Minimally, it should tell us what
> the size of the allocation was but any other information such as the
> same of the slab, the size of pages it normally uses are, etc. would
> also be useful.

Would something like this be sufficient? Figuring out the actual _size_
passed to kmalloc() is pretty difficult as then we would need to do the
NULL test in fastpath code or pass the argument deeper in the call-chain.

Pekka

diff --git a/mm/slub.c b/mm/slub.c
index 65ffda5..b5acf18 100644
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -1565,6 +1565,8 @@ new_slab:
c->page = new;
goto load_freelist;
}
+ printk(KERN_WARNING "SLUB: unable to satisfy allocation for cache %s (size=%d, node=%d, gfp=%x)\n",
+ s->name, s->size, node, gfpflags);
return NULL;
debug:
if (!alloc_debug_processing(s, c->page, object, addr))