On Mon, Jun 08, 2009 at 01:52:05PM +0300, Pekka Enberg wrote: > On Mon, Jun 8, 2009 at 1:17 PM, Mel Gorman<mel@xxxxxxxxx> wrote: > > Pekka, assuming the request size is 800 bytes, and SLUB is using order-1 > > pages for allocations of that size, what happened order-1 allocations > > falling back to order-0 allocations as necessary. That logic exists, > > right? If so, could it be broken? > > That logic is in allocate_slab() and if the higher order allocation > fails, we fall-back to struct kmem_cache ->min order. That in turn is > set up in calculate_sizes() to get_order(size) so it seems pretty > unlikely to me the allocation is 800 bytes. Of course, I could be > missing something here and there's a bug in oo_make() or oo_order(). > Hmm. 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. -- Mel Gorman Part-time Phd Student Linux Technology Center University of Limerick IBM Dublin Software Lab -- To unsubscribe from this list: send the line "unsubscribe kernel-testers" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html