Merge branch 'userns-for-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-2.6-microblaze.git] / mm / vmalloc.c
index 4d88fe5..4f5f8c9 100644 (file)
@@ -2420,8 +2420,10 @@ void *vmap(struct page **pages, unsigned int count,
                return NULL;
        }
 
-       if (flags & VM_MAP_PUT_PAGES)
+       if (flags & VM_MAP_PUT_PAGES) {
                area->pages = pages;
+               area->nr_pages = count;
+       }
        return area->addr;
 }
 EXPORT_SYMBOL(vmap);
@@ -3448,6 +3450,19 @@ void pcpu_free_vm_areas(struct vm_struct **vms, int nr_vms)
 }
 #endif /* CONFIG_SMP */
 
+bool vmalloc_dump_obj(void *object)
+{
+       struct vm_struct *vm;
+       void *objp = (void *)PAGE_ALIGN((unsigned long)object);
+
+       vm = find_vm_area(objp);
+       if (!vm)
+               return false;
+       pr_cont(" %u-page vmalloc region starting at %#lx allocated at %pS\n",
+               vm->nr_pages, (unsigned long)vm->addr, vm->caller);
+       return true;
+}
+
 #ifdef CONFIG_PROC_FS
 static void *s_start(struct seq_file *m, loff_t *pos)
        __acquires(&vmap_purge_lock)