The patch titled Subject: mm/hugetlb: not necessary to coalesce regions recursively has been added to the -mm tree. Its filename is mm-hugetlb-not-necessary-to-coalesce-regions-recursively.patch This patch should soon appear at https://ozlabs.org/~akpm/mmots/broken-out/mm-hugetlb-not-necessary-to-coalesce-regions-recursively.patch and later at https://ozlabs.org/~akpm/mmotm/broken-out/mm-hugetlb-not-necessary-to-coalesce-regions-recursively.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: Wei Yang <richard.weiyang@xxxxxxxxxxxxxxxxx> Subject: mm/hugetlb: not necessary to coalesce regions recursively Patch series "mm/hugetlb: code refine and simplification", v3. Following are some cleanups for hugetlb. Simple testing with tools/testing/selftests/vm/map_hugetlb passes. This patch (of 7): Per my understanding, we keep the regions ordered and would always coalesce regions properly. So the task to keep this property is just to coalesce its neighbour. Let's simplify this. Link: https://lkml.kernel.org/r/20200831022351.20916-1-richard.weiyang@xxxxxxxxxxxxxxxxx Link: https://lkml.kernel.org/r/20200831022351.20916-2-richard.weiyang@xxxxxxxxxxxxxxxxx Signed-off-by: Wei Yang <richard.weiyang@xxxxxxxxxxxxxxxxx> Reviewed-by: Baoquan He <bhe@xxxxxxxxxx> Reviewed-by: Mike Kravetz <mike.kravetz@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/hugetlb.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) --- a/mm/hugetlb.c~mm-hugetlb-not-necessary-to-coalesce-regions-recursively +++ a/mm/hugetlb.c @@ -309,8 +309,7 @@ static void coalesce_file_region(struct list_del(&rg->link); kfree(rg); - coalesce_file_region(resv, prg); - return; + rg = prg; } nrg = list_next_entry(rg, link); @@ -320,9 +319,6 @@ static void coalesce_file_region(struct list_del(&rg->link); kfree(rg); - - coalesce_file_region(resv, nrg); - return; } } _ Patches currently in -mm which might be from richard.weiyang@xxxxxxxxxxxxxxxxx are mm-mmap-rename-__vma_unlink_common-to-__vma_unlink.patch mm-mmap-leverage-vma_rb_erase_ignore-to-implement-vma_rb_erase.patch mm-mmap-leave-adjust_next-as-virtual-address-instead-of-page-frame-number.patch mm-hugetlb-not-necessary-to-coalesce-regions-recursively.patch mm-hugetlb-remove-vm_bug_onnrg-in-get_file_region_entry_from_cache.patch mm-hugetlb-use-list_splice-to-merge-two-list-at-once.patch mm-hugetlb-count-file_region-to-be-added-when-regions_needed-=-null.patch mm-hugetlb-a-page-from-buddy-is-not-on-any-list.patch mm-hugetlb-narrow-the-hugetlb_lock-protection-area-during-preparing-huge-page.patch mm-hugetlb-take-the-free-hpage-during-the-iteration-directly.patch mm-page_reporting-drop-stale-list-head-check-in-page_reporting_cycle.patch bitops-simplify-get_count_order_long.patch bitops-use-the-same-mechanism-for-get_count_order.patch