The patch titled Subject: mm-vmap-add-debug_augment_propagate_check-macro-v4 has been added to the -mm tree. Its filename is mm-vmap-add-debug_augment_propagate_check-macro-v4.patch This patch should soon appear at http://ozlabs.org/~akpm/mmots/broken-out/mm-vmap-add-debug_augment_propagate_check-macro-v4.patch and later at http://ozlabs.org/~akpm/mmotm/broken-out/mm-vmap-add-debug_augment_propagate_check-macro-v4.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: "Uladzislau Rezki (Sony)" <urezki@xxxxxxxxx> Subject: mm-vmap-add-debug_augment_propagate_check-macro-v4 - updated the commit message of [1] patch; - simplify te compute_subtree_max_size() function by using max3() macro; - added more explanation to find_va_links() function; - reworked the function names; - replace u8 type by using enum fit_type; - when init the vmap free space, trigger WARN_ON_ONCE() if kmem_cache* fails; - reworked a bit the pvm_determine_end_from_reverse() function; - invert "if" condition in __get_va_next_sibling(); - removed intermediate function in [2] patch. Link: http://lkml.kernel.org/r/20190406183508.25273-3-urezki@xxxxxxxxx Signed-off-by: Uladzislau Rezki (Sony) <urezki@xxxxxxxxx> Reviewed-by: Roman Gushchin <guro@xxxxxx> Cc: Ingo Molnar <mingo@xxxxxxx> Cc: Joel Fernandes <joelaf@xxxxxxxxxx> Cc: Matthew Wilcox <willy@xxxxxxxxxxxxx> Cc: Michal Hocko <mhocko@xxxxxxxx> Cc: Oleksiy Avramchenko <oleksiy.avramchenko@xxxxxxxxxxxxxx> Cc: Steven Rostedt <rostedt@xxxxxxxxxxx> Cc: Tejun Heo <tj@xxxxxxxxxx> Cc: Thomas Garnier <thgarnie@xxxxxxxxxx> Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/vmalloc.c | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) --- a/mm/vmalloc.c~mm-vmap-add-debug_augment_propagate_check-macro-v4 +++ a/mm/vmalloc.c @@ -323,6 +323,7 @@ EXPORT_SYMBOL(vmalloc_to_pfn); /*** Global kva allocator ***/ + #define DEBUG_AUGMENT_PROPAGATE_CHECK 0 #define VM_LAZY_FREE 0x02 @@ -541,7 +542,7 @@ unlink_va(struct vmap_area *va, struct r #if DEBUG_AUGMENT_PROPAGATE_CHECK static void -augment_tree_propagate_do_check(struct rb_node *n) +augment_tree_propagate_check(struct rb_node *n) { struct vmap_area *va; struct rb_node *node; @@ -561,7 +562,7 @@ augment_tree_propagate_do_check(struct r if (get_subtree_max_size(node->rb_left) == size) { node = node->rb_left; } else { - if (__va_size(va) == size) { + if (va_size(va) == size) { found = true; break; } @@ -573,16 +574,11 @@ augment_tree_propagate_do_check(struct r if (!found) { va = rb_entry(n, struct vmap_area, rb_node); pr_emerg("tree is corrupted: %lu, %lu\n", - __va_size(va), va->subtree_max_size); + va_size(va), va->subtree_max_size); } - augment_tree_propagate_do_check(n->rb_left); - augment_tree_propagate_do_check(n->rb_right); -} - -static void augment_tree_propagate_from_check(void) -{ - augment_tree_propagate_do_check(free_vmap_area_root.rb_node); + augment_tree_propagate_check(n->rb_left); + augment_tree_propagate_check(n->rb_right); } #endif @@ -637,7 +633,7 @@ augment_tree_propagate_from(struct vmap_ } #if DEBUG_AUGMENT_PROPAGATE_CHECK - augment_tree_propagate_from_check(); + augment_tree_propagate_check(free_vmap_area_root.rb_node); #endif } _ Patches currently in -mm which might be from urezki@xxxxxxxxx are mm-add-priority-threshold-to-__purge_vmap_area_lazy.patch mm-vmap-keep-track-of-free-blocks-for-vmap-allocation.patch mm-vmap-keep-track-of-free-blocks-for-vmap-allocation-v3.patch mm-vmap-keep-track-of-free-blocks-for-vmap-allocation-v4.patch mm-vmap-add-debug_augment_propagate_check-macro.patch mm-vmap-add-debug_augment_propagate_check-macro-v4.patch mm-vmap-add-debug_augment_lowest_match_check-macro.patch mm-vmap-add-debug_augment_lowest_match_check-macro-v4.patch mm-vmalloc-convert-vmap_lazy_nr-to-atomic_long_t.patch