summaryrefslogtreecommitdiffstats
path: root/mm/vmalloc.c
diff options
context:
space:
mode:
authorPeter Zijlstra <a.p.zijlstra@chello.nl>2009-02-25 16:04:03 +0100
committerIngo Molnar <mingo@elte.hu>2009-02-25 16:38:34 +0100
commit34754b69a6f87aa6aa2860525a82f12532f83afd (patch)
tree2f5234670238c3cf1139d09545fd25140f49c003 /mm/vmalloc.c
parentx86: usercopy: check for total size when deciding non-temporal cutoff (diff)
downloadlinux-34754b69a6f87aa6aa2860525a82f12532f83afd.tar.xz
linux-34754b69a6f87aa6aa2860525a82f12532f83afd.zip
x86: make vmap yell louder when it is used under irqs_disabled()
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'mm/vmalloc.c')
-rw-r--r--mm/vmalloc.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/mm/vmalloc.c b/mm/vmalloc.c
index 4dd2636d0b92..f83a70167b99 100644
--- a/mm/vmalloc.c
+++ b/mm/vmalloc.c
@@ -1257,6 +1257,7 @@ EXPORT_SYMBOL(vfree);
void vunmap(const void *addr)
{
BUG_ON(in_interrupt());
+ might_sleep();
__vunmap(addr, 0);
}
EXPORT_SYMBOL(vunmap);
@@ -1276,6 +1277,8 @@ void *vmap(struct page **pages, unsigned int count,
{
struct vm_struct *area;
+ might_sleep();
+
if (count > num_physpages)
return NULL;