Merge tag 'v4.6-rc3' into drm-intel-next-queued
[cascardo/linux.git] / mm / vmalloc.c
index 12d27ac..293889d 100644 (file)
@@ -484,8 +484,8 @@ overflow:
        }
 
        if (printk_ratelimit())
-               pr_warn("vmap allocation for size %lu failed: "
-                       "use vmalloc=<size> to increase size.\n", size);
+               pr_warn("vmap allocation for size %lu failed: use vmalloc=<size> to increase size\n",
+                       size);
        kfree(va);
        return ERR_PTR(-EBUSY);
 }
@@ -558,22 +558,21 @@ static void unmap_vmap_area(struct vmap_area *va)
 static void vmap_debug_free_range(unsigned long start, unsigned long end)
 {
        /*
-        * Unmap page tables and force a TLB flush immediately if
-        * CONFIG_DEBUG_PAGEALLOC is set. This catches use after free
-        * bugs similarly to those in linear kernel virtual address
-        * space after a page has been freed.
+        * Unmap page tables and force a TLB flush immediately if pagealloc
+        * debugging is enabled.  This catches use after free bugs similarly to
+        * those in linear kernel virtual address space after a page has been
+        * freed.
         *
-        * All the lazy freeing logic is still retained, in order to
-        * minimise intrusiveness of this debugging feature.
+        * All the lazy freeing logic is still retained, in order to minimise
+        * intrusiveness of this debugging feature.
         *
-        * This is going to be *slow* (linear kernel virtual address
-        * debugging doesn't do a broadcast TLB flush so it is a lot
-        * faster).
+        * This is going to be *slow* (linear kernel virtual address debugging
+        * doesn't do a broadcast TLB flush so it is a lot faster).
         */
-#ifdef CONFIG_DEBUG_PAGEALLOC
-       vunmap_page_range(start, end);
-       flush_tlb_kernel_range(start, end);
-#endif
+       if (debug_pagealloc_enabled()) {
+               vunmap_page_range(start, end);
+               flush_tlb_kernel_range(start, end);
+       }
 }
 
 /*
@@ -1113,7 +1112,7 @@ void vm_unmap_ram(const void *mem, unsigned int count)
        BUG_ON(!addr);
        BUG_ON(addr < VMALLOC_START);
        BUG_ON(addr > VMALLOC_END);
-       BUG_ON(!IS_ALIGNED(addr, PAGE_SIZE));
+       BUG_ON(!PAGE_ALIGNED(addr));
 
        debug_check_no_locks_freed(mem, size);
        vmap_debug_free_range(addr, addr+size);