diff --git a/mm/hugetlb.c b/mm/hugetlb.c index 8bffa4670c68cf22fb788b13115abf0bd93773d0..5c48b10a01d6288855c34c17f2071c603b3fc879 100644 --- a/mm/hugetlb.c +++ b/mm/hugetlb.c @@ -1087,11 +1087,10 @@ static bool pfn_range_valid_gigantic(struct zone *z, struct page *page; for (i = start_pfn; i < end_pfn; i++) { - if (!pfn_valid(i)) + page = pfn_to_online_page(i); + if (!page) return false; - page = pfn_to_page(i); - if (page_zone(page) != z) return false;