From: Zi Yan <ziy@xxxxxxxxxx> mem_map is only guaranteed to be virtually contiguous within a section. Use PAGES_PER_SECTION to check the condition properly. Signed-off-by: Zi Yan <ziy@xxxxxxxxxx> Cc: Mike Kravetz <mike.kravetz@xxxxxxxxxx> Cc: linux-mm@xxxxxxxxx Cc: linux-kernel@xxxxxxxxxxxxxxx --- mm/hugetlb.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mm/hugetlb.c b/mm/hugetlb.c index ce79d76c42ce..7f78203d6feb 100644 --- a/mm/hugetlb.c +++ b/mm/hugetlb.c @@ -1784,7 +1784,7 @@ pgoff_t hugetlb_basepage_index(struct page *page) pgoff_t index = page_index(page_head); unsigned long compound_idx; - if (compound_order(page_head) >= MAX_ORDER) + if (compound_order(page_head) >= PAGES_PER_SECTION) compound_idx = page_to_pfn(page) - page_to_pfn(page_head); else compound_idx = page - page_head; -- 2.30.2