]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/blobdiff - mm/rmap.c
mm: cleanup the gfp_mask handling in __vmalloc_area_node
[mirror_ubuntu-jammy-kernel.git] / mm / rmap.c
index 9425260774a1f0d034d6a3d434ff153b6e7e8440..1b84945d655c9732ae68296c1e5f513400f02a61 100644 (file)
--- a/mm/rmap.c
+++ b/mm/rmap.c
@@ -1205,7 +1205,7 @@ void page_add_file_rmap(struct page *page, bool compound)
        VM_BUG_ON_PAGE(compound && !PageTransHuge(page), page);
        lock_page_memcg(page);
        if (compound && PageTransHuge(page)) {
-               for (i = 0, nr = 0; i < HPAGE_PMD_NR; i++) {
+               for (i = 0, nr = 0; i < thp_nr_pages(page); i++) {
                        if (atomic_inc_and_test(&page[i]._mapcount))
                                nr++;
                }
@@ -1246,7 +1246,7 @@ static void page_remove_file_rmap(struct page *page, bool compound)
 
        /* page still mapped by someone else? */
        if (compound && PageTransHuge(page)) {
-               for (i = 0, nr = 0; i < HPAGE_PMD_NR; i++) {
+               for (i = 0, nr = 0; i < thp_nr_pages(page); i++) {
                        if (atomic_add_negative(-1, &page[i]._mapcount))
                                nr++;
                }
@@ -1293,7 +1293,7 @@ static void page_remove_anon_compound_rmap(struct page *page)
                 * Subpages can be mapped with PTEs too. Check how many of
                 * them are still mapped.
                 */
-               for (i = 0, nr = 0; i < HPAGE_PMD_NR; i++) {
+               for (i = 0, nr = 0; i < thp_nr_pages(page); i++) {
                        if (atomic_add_negative(-1, &page[i]._mapcount))
                                nr++;
                }
@@ -1303,10 +1303,10 @@ static void page_remove_anon_compound_rmap(struct page *page)
                 * page of the compound page is unmapped, but at least one
                 * small page is still mapped.
                 */
-               if (nr && nr < HPAGE_PMD_NR)
+               if (nr && nr < thp_nr_pages(page))
                        deferred_split_huge_page(page);
        } else {
-               nr = HPAGE_PMD_NR;
+               nr = thp_nr_pages(page);
        }
 
        if (unlikely(PageMlocked(page)))