Lines Matching refs:addr

92 static void __ref zero_pte_populate(pmd_t *pmd, unsigned long addr,  in zero_pte_populate()  argument
95 pte_t *pte = pte_offset_kernel(pmd, addr); in zero_pte_populate()
102 while (addr + PAGE_SIZE <= end) { in zero_pte_populate()
103 set_pte_at(&init_mm, addr, pte, zero_pte); in zero_pte_populate()
104 addr += PAGE_SIZE; in zero_pte_populate()
105 pte = pte_offset_kernel(pmd, addr); in zero_pte_populate()
109 static int __ref zero_pmd_populate(pud_t *pud, unsigned long addr, in zero_pmd_populate() argument
112 pmd_t *pmd = pmd_offset(pud, addr); in zero_pmd_populate()
116 next = pmd_addr_end(addr, end); in zero_pmd_populate()
118 if (IS_ALIGNED(addr, PMD_SIZE) && end - addr >= PMD_SIZE) { in zero_pmd_populate()
138 zero_pte_populate(pmd, addr, next); in zero_pmd_populate()
139 } while (pmd++, addr = next, addr != end); in zero_pmd_populate()
144 static int __ref zero_pud_populate(p4d_t *p4d, unsigned long addr, in zero_pud_populate() argument
147 pud_t *pud = pud_offset(p4d, addr); in zero_pud_populate()
151 next = pud_addr_end(addr, end); in zero_pud_populate()
152 if (IS_ALIGNED(addr, PUD_SIZE) && end - addr >= PUD_SIZE) { in zero_pud_populate()
157 pmd = pmd_offset(pud, addr); in zero_pud_populate()
167 p = pmd_alloc(&init_mm, pud, addr); in zero_pud_populate()
176 zero_pmd_populate(pud, addr, next); in zero_pud_populate()
177 } while (pud++, addr = next, addr != end); in zero_pud_populate()
182 static int __ref zero_p4d_populate(pgd_t *pgd, unsigned long addr, in zero_p4d_populate() argument
185 p4d_t *p4d = p4d_offset(pgd, addr); in zero_p4d_populate()
189 next = p4d_addr_end(addr, end); in zero_p4d_populate()
190 if (IS_ALIGNED(addr, P4D_SIZE) && end - addr >= P4D_SIZE) { in zero_p4d_populate()
194 p4d_populate_kernel(addr, p4d, in zero_p4d_populate()
196 pud = pud_offset(p4d, addr); in zero_p4d_populate()
199 pmd = pmd_offset(pud, addr); in zero_p4d_populate()
209 p = pud_alloc(&init_mm, p4d, addr); in zero_p4d_populate()
215 p4d_populate_kernel(addr, p4d, p); in zero_p4d_populate()
218 zero_pud_populate(p4d, addr, next); in zero_p4d_populate()
219 } while (p4d++, addr = next, addr != end); in zero_p4d_populate()
233 unsigned long addr = (unsigned long)shadow_start; in kasan_populate_early_shadow() local
235 pgd_t *pgd = pgd_offset_k(addr); in kasan_populate_early_shadow()
239 next = pgd_addr_end(addr, end); in kasan_populate_early_shadow()
241 if (IS_ALIGNED(addr, PGDIR_SIZE) && end - addr >= PGDIR_SIZE) { in kasan_populate_early_shadow()
254 pgd_populate_kernel(addr, pgd, in kasan_populate_early_shadow()
256 p4d = p4d_offset(pgd, addr); in kasan_populate_early_shadow()
257 p4d_populate_kernel(addr, p4d, in kasan_populate_early_shadow()
259 pud = pud_offset(p4d, addr); in kasan_populate_early_shadow()
262 pmd = pmd_offset(pud, addr); in kasan_populate_early_shadow()
271 if (!p4d_alloc(&init_mm, pgd, addr)) in kasan_populate_early_shadow()
274 pgd_populate_kernel(addr, pgd, in kasan_populate_early_shadow()
278 zero_p4d_populate(pgd, addr, next); in kasan_populate_early_shadow()
279 } while (pgd++, addr = next, addr != end); in kasan_populate_early_shadow()
344 static void kasan_remove_pte_table(pte_t *pte, unsigned long addr, in kasan_remove_pte_table() argument
350 for (; addr < end; addr = next, pte++) { in kasan_remove_pte_table()
351 next = (addr + PAGE_SIZE) & PAGE_MASK; in kasan_remove_pte_table()
362 pte_clear(&init_mm, addr, pte); in kasan_remove_pte_table()
366 static void kasan_remove_pmd_table(pmd_t *pmd, unsigned long addr, in kasan_remove_pmd_table() argument
371 for (; addr < end; addr = next, pmd++) { in kasan_remove_pmd_table()
374 next = pmd_addr_end(addr, end); in kasan_remove_pmd_table()
380 if (IS_ALIGNED(addr, PMD_SIZE) && in kasan_remove_pmd_table()
386 pte = pte_offset_kernel(pmd, addr); in kasan_remove_pmd_table()
387 kasan_remove_pte_table(pte, addr, next); in kasan_remove_pmd_table()
392 static void kasan_remove_pud_table(pud_t *pud, unsigned long addr, in kasan_remove_pud_table() argument
397 for (; addr < end; addr = next, pud++) { in kasan_remove_pud_table()
400 next = pud_addr_end(addr, end); in kasan_remove_pud_table()
406 if (IS_ALIGNED(addr, PUD_SIZE) && in kasan_remove_pud_table()
412 pmd = pmd_offset(pud, addr); in kasan_remove_pud_table()
414 kasan_remove_pmd_table(pmd, addr, next); in kasan_remove_pud_table()
419 static void kasan_remove_p4d_table(p4d_t *p4d, unsigned long addr, in kasan_remove_p4d_table() argument
424 for (; addr < end; addr = next, p4d++) { in kasan_remove_p4d_table()
427 next = p4d_addr_end(addr, end); in kasan_remove_p4d_table()
433 if (IS_ALIGNED(addr, P4D_SIZE) && in kasan_remove_p4d_table()
439 pud = pud_offset(p4d, addr); in kasan_remove_p4d_table()
440 kasan_remove_pud_table(pud, addr, next); in kasan_remove_p4d_table()
447 unsigned long addr, end, next; in kasan_remove_zero_shadow() local
450 addr = (unsigned long)kasan_mem_to_shadow(start); in kasan_remove_zero_shadow()
451 end = addr + (size >> KASAN_SHADOW_SCALE_SHIFT); in kasan_remove_zero_shadow()
457 for (; addr < end; addr = next) { in kasan_remove_zero_shadow()
460 next = pgd_addr_end(addr, end); in kasan_remove_zero_shadow()
462 pgd = pgd_offset_k(addr); in kasan_remove_zero_shadow()
467 if (IS_ALIGNED(addr, PGDIR_SIZE) && in kasan_remove_zero_shadow()
474 p4d = p4d_offset(pgd, addr); in kasan_remove_zero_shadow()
475 kasan_remove_p4d_table(p4d, addr, next); in kasan_remove_zero_shadow()