SLUB slab validation: Alloc while interrupts are disabled must use GFP_ATOMIC The data structure to manage the information gathered about functions allocating and freeing objects is allocated when the list_lock has already been taken. We need to allocate with GFP_ATOMIC instead of GFP_TEMPORARY. Signed-off-by: Christoph Lameter --- mm/slub.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) Index: slub/mm/slub.c =================================================================== --- slub.orig/mm/slub.c 2007-06-08 12:35:56.000000000 -0700 +++ slub/mm/slub.c 2007-06-08 12:37:32.000000000 -0700 @@ -2930,7 +2930,7 @@ static int alloc_loc_track(struct loc_tr order = get_order(sizeof(struct location) * max); - l = (void *)__get_free_pages(GFP_TEMPORARY, order); + l = (void *)__get_free_pages(GFP_ATOMIC, order); if (!l) return 0;