[PATCH] __vmalloc with GFP_ATOMIC causes 'sleeping from invalid context'
authorGiridhar Pemmasani <pgiri@yahoo.com>
Sat, 28 Oct 2006 17:38:34 +0000 (10:38 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Sat, 28 Oct 2006 18:30:52 +0000 (11:30 -0700)
commit52fd24ca1db3a741f144bbc229beefe044202cac
treebb3959b403c4bfec138b61e7943e17a76dc6cad6
parent6a2aae06cc1e87e9712a26a639f6a2f3442e2027
[PATCH] __vmalloc with GFP_ATOMIC causes 'sleeping from invalid context'

If __vmalloc is called to allocate memory with GFP_ATOMIC in atomic
context, the chain of calls results in __get_vm_area_node allocating memory
for vm_struct with GFP_KERNEL, causing the 'sleeping from invalid context'
warning.  This patch fixes it by passing the gfp flags along so
__get_vm_area_node allocates memory for vm_struct with the same flags.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
include/linux/vmalloc.h
mm/vmalloc.c