[PATCH] vmalloc(): don't pass __GFP_ZERO to slab
[linux-drm-fsl-dcu.git] / mm / vmalloc.c
index 750ab6ed13fca56ca42581dd32f74912fd1b347c..1133dd3aafcf4c02e5b2d109b02f45013b7d9d11 100644 (file)
@@ -428,8 +428,11 @@ void *__vmalloc_area_node(struct vm_struct *area, gfp_t gfp_mask,
        if (array_size > PAGE_SIZE) {
                pages = __vmalloc_node(array_size, gfp_mask, PAGE_KERNEL, node);
                area->flags |= VM_VPAGES;
-       } else
-               pages = kmalloc_node(array_size, (gfp_mask & ~__GFP_HIGHMEM), node);
+       } else {
+               pages = kmalloc_node(array_size,
+                               (gfp_mask & ~(__GFP_HIGHMEM | __GFP_ZERO)),
+                               node);
+       }
        area->pages = pages;
        if (!area->pages) {
                remove_vm_area(area->addr);