Lines Matching refs:p4d
73 DEFINE_POPULATE(p4d_populate, p4d, pud, init) in DEFINE_POPULATE() argument
74 DEFINE_POPULATE(pgd_populate, pgd, p4d, init) in DEFINE_POPULATE()
88 DEFINE_ENTRY(p4d, p4d, init)
192 p4d_t *p4d; in sync_global_pgds_l4() local
196 p4d = p4d_offset(pgd, addr); in sync_global_pgds_l4()
201 if (!p4d_none(*p4d_ref) && !p4d_none(*p4d)) in sync_global_pgds_l4()
202 BUG_ON(p4d_pgtable(*p4d) in sync_global_pgds_l4()
205 if (p4d_none(*p4d)) in sync_global_pgds_l4()
206 set_p4d(p4d, *p4d_ref); in sync_global_pgds_l4()
252 p4d_t *p4d = (p4d_t *)spp_getpage(); in fill_p4d() local
253 pgd_populate(&init_mm, pgd, p4d); in fill_p4d()
254 if (p4d != p4d_offset(pgd, 0)) in fill_p4d()
256 p4d, p4d_offset(pgd, 0)); in fill_p4d()
261 static pud_t *fill_pud(p4d_t *p4d, unsigned long vaddr) in fill_pud() argument
263 if (p4d_none(*p4d)) { in fill_pud()
265 p4d_populate(&init_mm, p4d, pud); in fill_pud()
266 if (pud != pud_offset(p4d, 0)) in fill_pud()
268 pud, pud_offset(p4d, 0)); in fill_pud()
270 return pud_offset(p4d, vaddr); in fill_pud()
312 p4d_t *p4d = p4d_page + p4d_index(vaddr); in set_pte_vaddr_p4d() local
313 pud_t *pud = fill_pud(p4d, vaddr); in set_pte_vaddr_p4d()
346 p4d_t *p4d; in populate_extra_pmd() local
350 p4d = fill_p4d(pgd, vaddr); in populate_extra_pmd()
351 pud = fill_pud(p4d, vaddr); in populate_extra_pmd()
370 p4d_t *p4d; in __init_extra_mapping() local
381 p4d = (p4d_t *) spp_getpage(); in __init_extra_mapping()
382 set_pgd(pgd, __pgd(__pa(p4d) | _KERNPG_TABLE | in __init_extra_mapping()
385 p4d = p4d_offset(pgd, (unsigned long)__va(phys)); in __init_extra_mapping()
386 if (p4d_none(*p4d)) { in __init_extra_mapping()
388 set_p4d(p4d, __p4d(__pa(pud) | _KERNPG_TABLE | in __init_extra_mapping()
391 pud = pud_offset(p4d, (unsigned long)__va(phys)); in __init_extra_mapping()
695 p4d_t *p4d = p4d_page + p4d_index(vaddr); in phys_p4d_init() local
710 set_p4d_init(p4d, __p4d(0), init); in phys_p4d_init()
714 if (!p4d_none(*p4d)) { in phys_p4d_init()
715 pud = pud_offset(p4d, 0); in phys_p4d_init()
726 p4d_populate_init(&init_mm, p4d, pud, init); in phys_p4d_init()
749 p4d_t *p4d; in __kernel_physical_mapping_init() local
754 p4d = (p4d_t *)pgd_page_vaddr(*pgd); in __kernel_physical_mapping_init()
755 paddr_last = phys_p4d_init(p4d, __pa(vaddr), in __kernel_physical_mapping_init()
762 p4d = alloc_low_page(); in __kernel_physical_mapping_init()
763 paddr_last = phys_p4d_init(p4d, __pa(vaddr), __pa(vaddr_end), in __kernel_physical_mapping_init()
768 pgd_populate_init(&init_mm, pgd, p4d, init); in __kernel_physical_mapping_init()
771 (pud_t *) p4d, init); in __kernel_physical_mapping_init()
1051 static void __meminit free_pud_table(pud_t *pud_start, p4d_t *p4d) in free_pud_table() argument
1063 free_pagetable(p4d_page(*p4d), 0); in free_pud_table()
1065 p4d_clear(p4d); in free_pud_table()
1201 p4d_t *p4d; in remove_p4d_table() local
1203 p4d = p4d_start + p4d_index(addr); in remove_p4d_table()
1204 for (; addr < end; addr = next, p4d++) { in remove_p4d_table()
1207 if (!p4d_present(*p4d)) in remove_p4d_table()
1210 BUILD_BUG_ON(p4d_leaf(*p4d)); in remove_p4d_table()
1212 pud_base = pud_offset(p4d, 0); in remove_p4d_table()
1220 free_pud_table(pud_base, p4d); in remove_p4d_table()
1235 p4d_t *p4d; in remove_pagetable() local
1244 p4d = p4d_offset(pgd, 0); in remove_pagetable()
1245 remove_p4d_table(p4d, addr, next, altmap, direct); in remove_pagetable()
1303 p4d_t *p4d; in preallocate_vmalloc_pages() local
1307 p4d = p4d_alloc(&init_mm, pgd, addr); in preallocate_vmalloc_pages()
1308 if (!p4d) in preallocate_vmalloc_pages()
1325 pud = pud_alloc(&init_mm, p4d, addr); in preallocate_vmalloc_pages()
1562 p4d_t *p4d; in register_page_bootmem_memmap() local
1578 p4d = p4d_offset(pgd, addr); in register_page_bootmem_memmap()
1579 if (p4d_none(*p4d)) { in register_page_bootmem_memmap()
1583 get_page_bootmem(section_nr, p4d_page(*p4d), MIX_SECTION_INFO); in register_page_bootmem_memmap()
1585 pud = pud_offset(p4d, addr); in register_page_bootmem_memmap()