The patch titled Subject: mm: vmalloc: pass proper vm_start into debugobjects has been added to the -mm tree. Its filename is mm-vmalloc-pass-proper-vm_start-into-debugobjects.patch This patch should soon appear at http://ozlabs.org/~akpm/mmots/broken-out/mm-vmalloc-pass-proper-vm_start-into-debugobjects.patch and later at http://ozlabs.org/~akpm/mmotm/broken-out/mm-vmalloc-pass-proper-vm_start-into-debugobjects.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/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Chintan Pandya <cpandya@xxxxxxxxxxxxxx> Subject: mm: vmalloc: pass proper vm_start into debugobjects Client can call vunmap with some intermediate 'addr' which may not be the start of the VM area. Entire unmap code works with vm->vm_start which is proper but debug object API is called with 'addr'. This could be a problem within debug objects. Pass proper start address into debug object API. Link: http://lkml.kernel.org/r/1523961828-9485-3-git-send-email-cpandya@xxxxxxxxxxxxxx Signed-off-by: Chintan Pandya <cpandya@xxxxxxxxxxxxxx> Reviewed-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> Cc: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx> Cc: Byungchul Park <byungchul.park@xxxxxxx> Cc: Catalin Marinas <catalin.marinas@xxxxxxx> Cc: Florian Fainelli <f.fainelli@xxxxxxxxx> Cc: Johannes Weiner <hannes@xxxxxxxxxxx> Cc: Laura Abbott <labbott@xxxxxxxxxx> Cc: Vlastimil Babka <vbabka@xxxxxxx> Cc: Wei Yang <richard.weiyang@xxxxxxxxx> Cc: Yisheng Xie <xieyisheng1@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/vmalloc.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff -puN mm/vmalloc.c~mm-vmalloc-pass-proper-vm_start-into-debugobjects mm/vmalloc.c --- a/mm/vmalloc.c~mm-vmalloc-pass-proper-vm_start-into-debugobjects +++ a/mm/vmalloc.c @@ -1124,15 +1124,15 @@ void vm_unmap_ram(const void *mem, unsig BUG_ON(addr > VMALLOC_END); BUG_ON(!PAGE_ALIGNED(addr)); - debug_check_no_locks_freed(mem, size); - if (likely(count <= VMAP_MAX_ALLOC)) { + debug_check_no_locks_freed(mem, size); vb_free(mem, size); return; } va = find_vmap_area(addr); BUG_ON(!va); + debug_check_no_locks_freed(va->va_start, (va->va_end - va->va_start)); free_unmap_vmap_area(va); } EXPORT_SYMBOL(vm_unmap_ram); @@ -1507,8 +1507,8 @@ static void __vunmap(const void *addr, i return; } - debug_check_no_locks_freed(addr, get_vm_area_size(area)); - debug_check_no_obj_freed(addr, get_vm_area_size(area)); + debug_check_no_locks_freed(area->addr, get_vm_area_size(area)); + debug_check_no_obj_freed(area->addr, get_vm_area_size(area)); remove_vm_area(addr); if (deallocate_pages) { _ Patches currently in -mm which might be from cpandya@xxxxxxxxxxxxxx are mm-vmalloc-clean-up-vunmap-to-avoid-pgtable-ops-twice.patch mm-vmalloc-avoid-racy-handling-of-debugobjects-in-vunmap.patch mm-vmalloc-pass-proper-vm_start-into-debugobjects.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