slob: fix gfp flags for order-0 page allocations

kmalloc_node() may allocate higher order slob pages, but the __GFP_COMP
bit is only passed to the page allocator and not represented in the
tracepoint event.  The bit should be passed to trace_kmalloc_node() as
well.

Acked-by: Matt Mackall <[email protected]>
Reviewed-by: Christoph Lameter <[email protected]>
Signed-off-by: David Rientjes <[email protected]>
Signed-off-by: Pekka Enberg <[email protected]>
This commit is contained in:
David Rientjes 2010-08-22 16:16:06 -07:00 • committed by Pekka Enberg
commit 8df275af8d

View file

@ -500,7 +500,9 @@ void *__kmalloc_node(size_t size, gfp_t gfp, int node)
} else {
unsigned int order = get_order(size);
ret = slob_new_pages(gfp | __GFP_COMP, get_order(size), node);
if (likely(order))
gfp |= __GFP_COMP;
ret = slob_new_pages(gfp, order, node);
if (ret) {
struct page *page;
page = virt_to_page(ret);