From be97c7c0fb8de0bc2dfc7bf82bf02bcc11142ae0 Mon Sep 17 00:00:00 2001 From: Sung-hun Kim Date: Wed, 15 Sep 2021 16:39:13 +0900 Subject: [PATCH] mm, thp: hide remap_try_huge_pmd for the THP-disabled kernel Since remap_try_huge_pmd is dependent on the kernel configuration CONFIG_TRANSPARENT_HUGEPAGE, it should be hidden when the kernel configuration is disabled. Fixes: 8690fa3fc22a ('mm, meminfo: modify page counting') Change-Id: Iae9efb2edf6cd563c794af68bea7987110a5b2da Signed-off-by: Sung-hun Kim --- mm/memory.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/mm/memory.c b/mm/memory.c index e6deee2..f1e5eb9 100644 --- a/mm/memory.c +++ b/mm/memory.c @@ -2259,7 +2259,7 @@ static int remap_pte_range(struct mm_struct *mm, pmd_t *pmd, return err; } #endif /* CONFIG_FINEGRAINED_THP */ - +#ifdef CONFIG_TRANSPARENT_HUGEPAGE static int remap_try_huge_pmd(struct mm_struct *mm, pmd_t *pmd, unsigned long addr, unsigned long end, unsigned long pfn, pgprot_t prot) @@ -2291,6 +2291,7 @@ static int remap_try_huge_pmd(struct mm_struct *mm, pmd_t *pmd, unsigned long ad return ret; } +#endif /* CONFIG_TRANSPARENT_HUGEPAGE */ static inline int remap_pmd_range(struct mm_struct *mm, pud_t *pud, unsigned long addr, unsigned long end, @@ -2308,10 +2309,11 @@ static inline int remap_pmd_range(struct mm_struct *mm, pud_t *pud, do { next = pmd_addr_end(addr, end); +#ifdef CONFIG_TRANSPARENT_HUGEPAGE if (remap_try_huge_pmd(mm, pmd, addr, next, pfn + (addr >> PAGE_SHIFT), prot)) continue; - +#endif /* CONFIG_TRANSPARENT_HUGEPAGE */ err = remap_pte_range(mm, pmd, addr, next, pfn + (addr >> PAGE_SHIFT), prot); if (err) -- 2.7.4