The patch titled Subject: mm: migrate: fix missing update page_private to hugetlb_page_subpool has been added to the -mm tree. Its filename is mm-migrate-fix-missing-update-page_private-to-hugetlb_page_subpool.patch This patch should soon appear at https://ozlabs.org/~akpm/mmots/broken-out/mm-migrate-fix-missing-update-page_private-to-hugetlb_page_subpool.patch and later at https://ozlabs.org/~akpm/mmotm/broken-out/mm-migrate-fix-missing-update-page_private-to-hugetlb_page_subpool.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: Muchun Song <songmuchun@xxxxxxxxxxxxx> Subject: mm: migrate: fix missing update page_private to hugetlb_page_subpool Since commit d6995da31122 ("hugetlb: use page.private for hugetlb specific page flags") converts page.private for hugetlb specific page flags. We should use hugetlb_page_subpool() to get the subpool pointer instead of page_private(). The commit forgot to update it in the page migration routine. So fix it. Link: https://lkml.kernel.org/r/20210520025949.1866-1-songmuchun@xxxxxxxxxxxxx Fixes: d6995da31122 ("hugetlb: use page.private for hugetlb specific page flags") Signed-off-by: Muchun Song <songmuchun@xxxxxxxxxxxxx> Reported-by: Anshuman Khandual <anshuman.khandual@xxxxxxx> Reviewed-by: Mike Kravetz <mike.kravetz@xxxxxxxxxx> Cc: Oscar Salvador <osalvador@xxxxxxx> Cc: Michal Hocko <mhocko@xxxxxxxx> Cc: David Hildenbrand <david@xxxxxxxxxx> Cc: Matthew Wilcox <willy@xxxxxxxxxxxxx> Cc: Xiongchun Duan <duanxiongchun@xxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/migrate.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/mm/migrate.c~mm-migrate-fix-missing-update-page_private-to-hugetlb_page_subpool +++ a/mm/migrate.c @@ -1292,7 +1292,7 @@ static int unmap_and_move_huge_page(new_ * page_mapping() set, hugetlbfs specific move page routine will not * be called and we could leak usage counts for subpools. */ - if (page_private(hpage) && !page_mapping(hpage)) { + if (hugetlb_page_subpool(hpage) && !page_mapping(hpage)) { rc = -EBUSY; goto out_unlock; } _ Patches currently in -mm which might be from songmuchun@xxxxxxxxxxxxx are mm-memcontrol-fix-root_mem_cgroup-charging.patch mm-memcontrol-fix-page-charging-in-page-replacement.patch mm-memcontrol-bail-out-early-when-mm-in-get_mem_cgroup_from_mm.patch mm-memcontrol-remove-the-pgdata-parameter-of-mem_cgroup_page_lruvec.patch mm-memcontrol-simplify-lruvec_holds_page_lru_lock.patch mm-memcontrol-rename-lruvec_holds_page_lru_lock-to-page_matches_lruvec.patch mm-memcontrol-simplify-the-logic-of-objcg-pinning-memcg.patch mm-memcontrol-move-obj_cgroup_uncharge_pages-out-of-css_set_lock.patch mm-vmscan-remove-noinline_for_stack.patch mm-memory_hotplug-factor-out-bootmem-core-functions-to-bootmem_infoc.patch mm-hugetlb-introduce-a-new-config-hugetlb_page_free_vmemmap.patch mm-hugetlb-gather-discrete-indexes-of-tail-page.patch mm-hugetlb-free-the-vmemmap-pages-associated-with-each-hugetlb-page.patch mm-hugetlb-defer-freeing-of-hugetlb-pages.patch mm-hugetlb-alloc-the-vmemmap-pages-associated-with-each-hugetlb-page.patch mm-hugetlb-add-a-kernel-parameter-hugetlb_free_vmemmap.patch mm-memory_hotplug-disable-memmap_on_memory-when-hugetlb_free_vmemmap-enabled.patch mm-hugetlb-introduce-nr_free_vmemmap_pages-in-the-struct-hstate.patch mm-migrate-fix-missing-update-page_private-to-hugetlb_page_subpool.patch