Lines Matching refs:pmd
20 static inline int gup_pte_range(pmd_t *pmdp, pmd_t pmd, unsigned long addr, in gup_pte_range() argument
29 ptep = ((pte_t *) pmd_deref(pmd)) + pte_index(addr); in gup_pte_range()
54 static inline int gup_huge_pmd(pmd_t *pmdp, pmd_t pmd, unsigned long addr, in gup_huge_pmd() argument
63 if ((pmd_val(pmd) & mask) != result) in gup_huge_pmd()
65 VM_BUG_ON(!pfn_valid(pmd_val(pmd) >> PAGE_SHIFT)); in gup_huge_pmd()
68 head = pmd_page(pmd); in gup_huge_pmd()
84 if (unlikely(pmd_val(pmd) != pmd_val(*pmdp))) { in gup_huge_pmd()
109 pmd_t *pmdp, pmd; in gup_pmd_range() local
116 pmd = *pmdp; in gup_pmd_range()
128 if (pmd_none(pmd) || pmd_trans_splitting(pmd)) in gup_pmd_range()
130 if (unlikely(pmd_large(pmd))) { in gup_pmd_range()
136 if (pmd_protnone(pmd)) in gup_pmd_range()
138 if (!gup_huge_pmd(pmdp, pmd, addr, next, in gup_pmd_range()
141 } else if (!gup_pte_range(pmdp, pmd, addr, next, in gup_pmd_range()