aboutsummaryrefslogtreecommitdiffstats
path: root/mm/hugetlb.c
diff options
context:
space:
mode:
authorMiaohe Lin <linmiaohe@huawei.com>2022-09-01 20:00:28 +0800
committerAndrew Morton <akpm@linux-foundation.org>2022-09-11 20:26:10 -0700
commita9e1eab241bdaadd56b6cfdc481cff6a24c4799b (patch)
treeaf4b3e4ae61716af2067cc2ee262812bbee8ccd4 /mm/hugetlb.c
parenthugetlb: kill hugetlbfs_pagecache_page() (diff)
downloadlinux-dev-a9e1eab241bdaadd56b6cfdc481cff6a24c4799b.tar.xz
linux-dev-a9e1eab241bdaadd56b6cfdc481cff6a24c4799b.zip
hugetlb: add comment for subtle SetHPageVmemmapOptimized()
The SetHPageVmemmapOptimized() called here seems unnecessary as it's assumed to be set when calling this function. But it's indeed cleared by above set_page_private(page, 0). Add a comment to avoid possible future confusion. Link: https://lkml.kernel.org/r/20220901120030.63318-9-linmiaohe@huawei.com Signed-off-by: Miaohe Lin <linmiaohe@huawei.com> Reviewed-by: Muchun Song <songmuchun@bytedance.com> Cc: Mike Kravetz <mike.kravetz@oracle.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'mm/hugetlb.c')
-rw-r--r--mm/hugetlb.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/mm/hugetlb.c b/mm/hugetlb.c
index 29c3478d1bf3..fe7b69a970aa 100644
--- a/mm/hugetlb.c
+++ b/mm/hugetlb.c
@@ -1504,6 +1504,10 @@ static void add_hugetlb_page(struct hstate *h, struct page *page,
set_compound_page_dtor(page, HUGETLB_PAGE_DTOR);
set_page_private(page, 0);
+ /*
+ * We have to set HPageVmemmapOptimized again as above
+ * set_page_private(page, 0) cleared it.
+ */
SetHPageVmemmapOptimized(page);
/*