Lines Matching refs:pmdp
84 static int walk_pte_level(pmd_t *pmdp, unsigned long addr, unsigned long end, in walk_pte_level() argument
91 ptep = pte_offset_kernel(pmdp, addr); in walk_pte_level()
112 static int split_pmd_page(pmd_t *pmdp, unsigned long addr) in split_pmd_page() argument
122 pte_addr = pmd_pfn(*pmdp) << PAGE_SHIFT; in split_pmd_page()
123 ro = !!(pmd_val(*pmdp) & _SEGMENT_ENTRY_PROTECT); in split_pmd_page()
124 nx = !!(pmd_val(*pmdp) & _SEGMENT_ENTRY_NOEXEC); in split_pmd_page()
135 pgt_set((unsigned long *)pmdp, pmd_val(new), addr, CRDTE_DTT_SEGMENT); in split_pmd_page()
141 static void modify_pmd_page(pmd_t *pmdp, unsigned long addr, in modify_pmd_page() argument
144 pmd_t new = *pmdp; in modify_pmd_page()
154 pgt_set((unsigned long *)pmdp, pmd_val(new), addr, CRDTE_DTT_SEGMENT); in modify_pmd_page()
162 pmd_t *pmdp; in walk_pmd_level() local
165 pmdp = pmd_offset(pudp, addr); in walk_pmd_level()
167 if (pmd_none(*pmdp)) in walk_pmd_level()
170 if (pmd_large(*pmdp)) { in walk_pmd_level()
175 rc = split_pmd_page(pmdp, addr); in walk_pmd_level()
180 modify_pmd_page(pmdp, addr, flags); in walk_pmd_level()
182 rc = walk_pte_level(pmdp, addr, next, flags); in walk_pmd_level()
186 pmdp++; in walk_pmd_level()
196 pmd_t *pm_dir, *pmdp; in split_pud_page() local
209 pmdp = pm_dir; in split_pud_page()
211 set_pmd(pmdp, __pmd(pmd_addr | prot)); in split_pud_page()
213 pmdp++; in split_pud_page()