Lines Matching refs:pgd
38 static inline bool kasan_p4d_table(pgd_t pgd) in kasan_p4d_table() argument
40 return pgd_page(pgd) == virt_to_page(lm_alias(kasan_early_shadow_p4d)); in kasan_p4d_table()
43 static inline bool kasan_p4d_table(pgd_t pgd) in kasan_p4d_table() argument
183 static int __ref zero_p4d_populate(pgd_t *pgd, unsigned long addr, in zero_p4d_populate() argument
186 p4d_t *p4d = p4d_offset(pgd, addr); in zero_p4d_populate()
235 pgd_t *pgd = pgd_offset_k(addr); in kasan_populate_early_shadow() local
254 pgd_populate(&init_mm, pgd, in kasan_populate_early_shadow()
256 p4d = p4d_offset(pgd, addr); in kasan_populate_early_shadow()
268 if (pgd_none(*pgd)) { in kasan_populate_early_shadow()
272 p = p4d_alloc(&init_mm, pgd, addr); in kasan_populate_early_shadow()
276 pgd_populate(&init_mm, pgd, in kasan_populate_early_shadow()
280 zero_p4d_populate(pgd, addr, next); in kasan_populate_early_shadow()
281 } while (pgd++, addr = next, addr != end); in kasan_populate_early_shadow()
331 static void kasan_free_p4d(p4d_t *p4d_start, pgd_t *pgd) in kasan_free_p4d() argument
342 p4d_free(&init_mm, (p4d_t *)page_to_virt(pgd_page(*pgd))); in kasan_free_p4d()
343 pgd_clear(pgd); in kasan_free_p4d()
447 pgd_t *pgd; in kasan_remove_zero_shadow() local
462 pgd = pgd_offset_k(addr); in kasan_remove_zero_shadow()
463 if (!pgd_present(*pgd)) in kasan_remove_zero_shadow()
466 if (kasan_p4d_table(*pgd)) { in kasan_remove_zero_shadow()
469 pgd_clear(pgd); in kasan_remove_zero_shadow()
474 p4d = p4d_offset(pgd, addr); in kasan_remove_zero_shadow()
476 kasan_free_p4d(p4d_offset(pgd, 0), pgd); in kasan_remove_zero_shadow()