Lines Matching full:pmd
74 static inline bool kasan_pte_table(pmd_t pmd) in kasan_pte_table() argument
76 return pmd_page(pmd) == virt_to_page(lm_alias(kasan_zero_pte)); in kasan_pte_table()
90 static void __ref zero_pte_populate(pmd_t *pmd, unsigned long addr, in zero_pte_populate() argument
93 pte_t *pte = pte_offset_kernel(pmd, addr); in zero_pte_populate()
102 pte = pte_offset_kernel(pmd, addr); in zero_pte_populate()
109 pmd_t *pmd = pmd_offset(pud, addr); in zero_pmd_populate() local
116 pmd_populate_kernel(&init_mm, pmd, lm_alias(kasan_zero_pte)); in zero_pmd_populate()
120 if (pmd_none(*pmd)) { in zero_pmd_populate()
130 pmd_populate_kernel(&init_mm, pmd, p); in zero_pmd_populate()
132 zero_pte_populate(pmd, addr, next); in zero_pmd_populate()
133 } while (pmd++, addr = next, addr != end); in zero_pmd_populate()
147 pmd_t *pmd; in zero_pud_populate() local
150 pmd = pmd_offset(pud, addr); in zero_pud_populate()
151 pmd_populate_kernel(&init_mm, pmd, lm_alias(kasan_zero_pte)); in zero_pud_populate()
183 pmd_t *pmd; in zero_p4d_populate() local
188 pmd = pmd_offset(pud, addr); in zero_p4d_populate()
189 pmd_populate_kernel(&init_mm, pmd, in zero_p4d_populate()
232 pmd_t *pmd; in kasan_populate_zero_shadow() local
237 * [pud,pmd]_populate*() below needed only for in kasan_populate_zero_shadow()
258 pmd = pmd_offset(pud, addr); in kasan_populate_zero_shadow()
259 pmd_populate_kernel(&init_mm, pmd, lm_alias(kasan_zero_pte)); in kasan_populate_zero_shadow()
281 static void kasan_free_pte(pte_t *pte_start, pmd_t *pmd) in kasan_free_pte() argument
292 pte_free_kernel(&init_mm, (pte_t *)page_to_virt(pmd_page(*pmd))); in kasan_free_pte()
293 pmd_clear(pmd); in kasan_free_pte()
298 pmd_t *pmd; in kasan_free_pmd() local
302 pmd = pmd_start + i; in kasan_free_pmd()
303 if (!pmd_none(*pmd)) in kasan_free_pmd()
360 static void kasan_remove_pmd_table(pmd_t *pmd, unsigned long addr, in kasan_remove_pmd_table() argument
365 for (; addr < end; addr = next, pmd++) { in kasan_remove_pmd_table()
370 if (!pmd_present(*pmd)) in kasan_remove_pmd_table()
373 if (kasan_pte_table(*pmd)) { in kasan_remove_pmd_table()
376 pmd_clear(pmd); in kasan_remove_pmd_table()
379 pte = pte_offset_kernel(pmd, addr); in kasan_remove_pmd_table()
381 kasan_free_pte(pte_offset_kernel(pmd, 0), pmd); in kasan_remove_pmd_table()
391 pmd_t *pmd, *pmd_base; in kasan_remove_pud_table() local
404 pmd = pmd_offset(pud, addr); in kasan_remove_pud_table()
406 kasan_remove_pmd_table(pmd, addr, next); in kasan_remove_pud_table()