The patch titled Subject: mm: remove free_unmap_vmap_area_addr() has been added to the -mm tree. Its filename is mm-remove-free_unmap_vmap_area_addr.patch This patch should soon appear at http://ozlabs.org/~akpm/mmots/broken-out/mm-remove-free_unmap_vmap_area_addr.patch and later at http://ozlabs.org/~akpm/mmotm/broken-out/mm-remove-free_unmap_vmap_area_addr.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/SubmitChecklist when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Christoph Hellwig <hch@xxxxxx> Subject: mm: remove free_unmap_vmap_area_addr() Just inline it into the only caller. Link: http://lkml.kernel.org/r/1479474236-4139-3-git-send-email-hch@xxxxxx Signed-off-by: Christoph Hellwig <hch@xxxxxx> Tested-by: Jisheng Zhang <jszhang@xxxxxxxxxxx> Cc: Andrey Ryabinin <aryabinin@xxxxxxxxxxxxx> Cc: Joel Fernandes <joelaf@xxxxxxxxxx> Cc: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> Cc: John Dias <joaodias@xxxxxxxxxx> Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx> Cc: "H. Peter Anvin" <hpa@xxxxxxxxx> Cc: Ingo Molnar <mingo@xxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/vmalloc.c | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff -puN mm/vmalloc.c~mm-remove-free_unmap_vmap_area_addr mm/vmalloc.c --- a/mm/vmalloc.c~mm-remove-free_unmap_vmap_area_addr +++ a/mm/vmalloc.c @@ -731,16 +731,6 @@ static struct vmap_area *find_vmap_area( return va; } -static void free_unmap_vmap_area_addr(unsigned long addr) -{ - struct vmap_area *va; - - va = find_vmap_area(addr); - BUG_ON(!va); - free_unmap_vmap_area(va); -} - - /*** Per cpu kva allocator ***/ /* @@ -1098,6 +1088,7 @@ void vm_unmap_ram(const void *mem, unsig { unsigned long size = (unsigned long)count << PAGE_SHIFT; unsigned long addr = (unsigned long)mem; + struct vmap_area *va; BUG_ON(!addr); BUG_ON(addr < VMALLOC_START); @@ -1107,10 +1098,14 @@ void vm_unmap_ram(const void *mem, unsig debug_check_no_locks_freed(mem, size); vmap_debug_free_range(addr, addr+size); - if (likely(count <= VMAP_MAX_ALLOC)) + if (likely(count <= VMAP_MAX_ALLOC)) { vb_free(mem, size); - else - free_unmap_vmap_area_addr(addr); + return; + } + + va = find_vmap_area(addr); + BUG_ON(!va); + free_unmap_vmap_area(va); } EXPORT_SYMBOL(vm_unmap_ram); _ Patches currently in -mm which might be from hch@xxxxxx are mm-remove-free_unmap_vmap_area_noflush.patch mm-remove-free_unmap_vmap_area_addr.patch mm-refactor-__purge_vmap_area_lazy.patch mm-warn-about-vfree-from-atomic-context.patch mm-mark-all-calls-into-the-vmalloc-subsystem-as-potentially-sleeping.patch mm-turn-vmap_purge_lock-into-a-mutex.patch -- To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html