diff --git a/mm/hugetlb.c b/mm/hugetlb.c index d231f23088a7738f614a9b9ffa719170373b8704..9951fb7412cc73dffdf2695c6c4e5e80f3e62c67 100644 --- a/mm/hugetlb.c +++ b/mm/hugetlb.c @@ -6546,7 +6546,7 @@ struct page *hugetlb_follow_page_mask(struct vm_area_struct *vma, } } - page += ((address & ~huge_page_mask(h)) >> PAGE_SHIFT); + page = nth_page(page, ((address & ~huge_page_mask(h)) >> PAGE_SHIFT)); /* * Note that page may be a sub-page, and with vmemmap