Architectures like arm64 have PUD level HugeTLB pages for certain configs
(1GB huge page is PUD based on ARM64_4K_PAGES base page size) that can be
enabled for migration. It can be achieved through checking for PUD_SHIFT
order based HugeTLB pages during migration.

Reviewed-by: Naoya Horiguchi <n-horigu...@ah.jp.nec.com>
Reviewed-by: Steve Capper <steve.cap...@arm.com>
Acked-by: Michal Hocko <mho...@suse.com>
Signed-off-by: Anshuman Khandual <anshuman.khand...@arm.com>
---
 include/linux/hugetlb.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/include/linux/hugetlb.h b/include/linux/hugetlb.h
index 1b858d7..70bcd89 100644
--- a/include/linux/hugetlb.h
+++ b/include/linux/hugetlb.h
@@ -497,7 +497,8 @@ static inline bool hugepage_migration_supported(struct 
hstate *h)
 {
 #ifdef CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION
        if ((huge_page_shift(h) == PMD_SHIFT) ||
-               (huge_page_shift(h) == PGDIR_SHIFT))
+               (huge_page_shift(h) == PUD_SHIFT) ||
+                       (huge_page_shift(h) == PGDIR_SHIFT))
                return true;
        else
                return false;
-- 
2.7.4

Reply via email to