summaryrefslogtreecommitdiffstats
path: root/mm/huge_memory.c
diff options
context:
space:
mode:
authorMiaohe Lin <linmiaohe@huawei.com>2024-09-14 09:53:06 +0800
committerAndrew Morton <akpm@linux-foundation.org>2024-09-17 00:58:04 -0700
commit2a1b8648d9be9f37f808a36c0f74adb8c53d06e6 (patch)
treedf0c200adf21996de5bb1d71e5d31eb48245c92d /mm/huge_memory.c
parent98b74bb4d7e96b4da5ef3126511febe55b76b807 (diff)
downloadlinux-2a1b8648d9be9f37f808a36c0f74adb8c53d06e6.tar.gz
linux-2a1b8648d9be9f37f808a36c0f74adb8c53d06e6.tar.bz2
linux-2a1b8648d9be9f37f808a36c0f74adb8c53d06e6.zip
mm/huge_memory: ensure huge_zero_folio won't have large_rmappable flag set
Ensure huge_zero_folio won't have large_rmappable flag set. So it can be reported as thp,zero correctly through stable_page_flags(). Link: https://lkml.kernel.org/r/20240914015306.3656791-1-linmiaohe@huawei.com Fixes: 5691753d73a2 ("mm: convert huge_zero_page to huge_zero_folio") Signed-off-by: Miaohe Lin <linmiaohe@huawei.com> Cc: David Hildenbrand <david@redhat.com> Cc: Matthew Wilcox (Oracle) <willy@infradead.org> Cc: <stable@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'mm/huge_memory.c')
-rw-r--r--mm/huge_memory.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/mm/huge_memory.c b/mm/huge_memory.c
index 67c86a5d64a6..99b146d16a18 100644
--- a/mm/huge_memory.c
+++ b/mm/huge_memory.c
@@ -220,6 +220,8 @@ retry:
count_vm_event(THP_ZERO_PAGE_ALLOC_FAILED);
return false;
}
+ /* Ensure zero folio won't have large_rmappable flag set. */
+ folio_clear_large_rmappable(zero_folio);
preempt_disable();
if (cmpxchg(&huge_zero_folio, NULL, zero_folio)) {
preempt_enable();