]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - mm/gup.c
mm/follow_page_mask: add support for hugetlb pgd entries
[mirror_ubuntu-bionic-kernel.git] / mm / gup.c
index bf68e21d7a3a646a068efc1255983e7c7a532c96..fe95a37a417256be4463105832614fbd892106ec 100644 (file)
--- a/mm/gup.c
+++ b/mm/gup.c
@@ -357,6 +357,13 @@ struct page *follow_page_mask(struct vm_area_struct *vma,
        if (pgd_none(*pgd) || unlikely(pgd_bad(*pgd)))
                return no_page_table(vma, flags);
 
+       if (pgd_huge(*pgd)) {
+               page = follow_huge_pgd(mm, address, pgd, flags);
+               if (page)
+                       return page;
+               return no_page_table(vma, flags);
+       }
+
        return follow_p4d_mask(vma, address, pgd, flags, page_mask);
 }