]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - mm/gup.c
mm, x86: add support for PUD-sized transparent hugepages
[mirror_ubuntu-bionic-kernel.git] / mm / gup.c
index 40abe4c903834573d3249326b957553b72bd8eb9..1e67461b2733095a90a39e5c21c75e76651c728e 100644 (file)
--- a/mm/gup.c
+++ b/mm/gup.c
@@ -253,6 +253,13 @@ struct page *follow_page_mask(struct vm_area_struct *vma,
                        return page;
                return no_page_table(vma, flags);
        }
+       if (pud_devmap(*pud)) {
+               ptl = pud_lock(mm, pud);
+               page = follow_devmap_pud(vma, address, pud, flags);
+               spin_unlock(ptl);
+               if (page)
+                       return page;
+       }
        if (unlikely(pud_bad(*pud)))
                return no_page_table(vma, flags);