Commit f4afee11 authored by Kefeng Wang's avatar Kefeng Wang
Browse files

mm: use pfn_swap_entry_folio() in __split_huge_pmd_locked()

mainline inclusion
from mainline-v6.9-rc1
commit 439992ff4637ad5042ca8ee1f659fae24890de3e
category: feature
bugzilla: https://gitee.com/openeuler/kernel/issues/I9CHB4
CVE: NA

-------------------------------------------------

Call pfn_swap_entry_folio() in __split_huge_pmd_locked() as preparation
for converting mm counter functions to take a folio.

Link: https://lkml.kernel.org/r/20240111152429.3374566-6-willy@infradead.org


Signed-off-by: default avatarKefeng Wang <wangkefeng.wang@huawei.com>
Signed-off-by: default avatarMatthew Wilcox (Oracle) <willy@infradead.org>
Cc: David Hildenbrand <david@redhat.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
(cherry picked from commit 439992ff4637ad5042ca8ee1f659fae24890de3e)
Signed-off-by: default avatarKefeng Wang <wangkefeng.wang@huawei.com>
parent a2e3dfa9
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -2287,7 +2287,7 @@ static void __split_huge_pmd_locked(struct vm_area_struct *vma, pmd_t *pmd,
			swp_entry_t entry;

			entry = pmd_to_swp_entry(old_pmd);
			page = pfn_swap_entry_to_page(entry);
			folio = pfn_swap_entry_folio(entry);
		} else {
			page = pmd_page(old_pmd);
			folio = page_folio(page);
@@ -2299,7 +2299,7 @@ static void __split_huge_pmd_locked(struct vm_area_struct *vma, pmd_t *pmd,
			folio_remove_rmap_pmd(folio, page, vma);
			folio_put(folio);
		}
		add_mm_counter(mm, mm_counter_file(page), -HPAGE_PMD_NR);
		add_mm_counter(mm, mm_counter_file(&folio->page), -HPAGE_PMD_NR);
		return;
	}