Lines Matching full:pmd
18 pr_err("%s:%d: bad pmd %p(%016Lx)\n", \
46 * because GCC will not read the 64-bit value of the pmd atomically.
50 * function to know if the pmd is null or not, and in turn to know if
51 * they can run pte_offset_map_lock() or pmd_trans_huge() or other pmd
54 * Without THP if the mmap_lock is held for reading, the pmd can only
56 * we can always return atomic pmd values with this function.
58 * With THP if the mmap_lock is held for reading, the pmd can become
65 * 'none' (zero) pmdval if the low part of the pmd is zero.
71 * needs the low part of the pmd to be read atomically to decide if the
72 * pmd is unstable or not, with the only exception when the low part
73 * of the pmd is zero, in which case we return a 'none' pmd.
84 * or we can end up with a partial pmd. in pmd_read_atomic()
98 static inline void native_set_pmd(pmd_t *pmdp, pmd_t pmd) in native_set_pmd() argument
100 set_64bit((unsigned long long *)(pmdp), native_pmd_val(pmd)); in native_set_pmd()
124 static inline void native_pmd_clear(pmd_t *pmd) in native_pmd_clear() argument
126 u32 *tmp = (u32 *)pmd; in native_pmd_clear()
170 pmd_t pmd; member
183 return res.pmd; in native_pmdp_get_and_clear()
192 unsigned long address, pmd_t *pmdp, pmd_t pmd) in pmdp_establish()
197 * If pmd has present bit cleared we can get away without expensive in pmdp_establish()
201 if (!(pmd_val(pmd) & _PAGE_PRESENT)) { in pmdp_establish()
206 new.pmd = pmd; in pmdp_establish()
212 return old.pmd; in pmdp_establish()
217 } while (cmpxchg64(&pmdp->pmd, old.pmd, pmd.pmd) != old.pmd); in pmdp_establish()