Home
last modified time | relevance | path

Searched refs:p4dp (Results 1 – 25 of 29) sorted by relevance

12

/linux/arch/riscv/mm/
H A Dkasan_init.c115 p4d_t *p4dp, *p; in kasan_populate_p4d() local
123 p4dp = p4d_offset(pgd, vaddr); in kasan_populate_p4d()
128 if (p4d_none(p4dp_get(p4dp)) && IS_ALIGNED(vaddr, P4D_SIZE) && in kasan_populate_p4d()
132 set_p4d(p4dp, pfn_p4d(PFN_DOWN(phys_addr), PAGE_KERNEL)); in kasan_populate_p4d()
138 kasan_populate_pud(p4dp, vaddr, next); in kasan_populate_p4d()
139 } while (p4dp++, vaddr = next, vaddr != end); in kasan_populate_p4d()
165 static void __init kasan_early_clear_pud(p4d_t *p4dp, in kasan_early_clear_pud() argument
172 pudp = (pud_t *)p4dp; in kasan_early_clear_pud()
174 base_pud = pt_ops.get_pud_virt(pfn_to_phys(_p4d_pfn(p4dp_get(p4dp)))); in kasan_early_clear_pud()
193 p4d_t *p4dp, *base_p4d; in kasan_early_clear_p4d() local
[all …]
H A Dfault.c31 p4d_t *p4dp, p4d; in show_pte() local
50 p4dp = p4d_offset(pgdp, addr); in show_pte()
51 p4d = p4dp_get(p4dp); in show_pte()
56 pudp = pud_offset(p4dp, addr); in show_pte()
H A Dinit.c620 static void __meminit create_p4d_mapping(p4d_t *p4dp, uintptr_t va, phys_addr_t pa, phys_addr_t sz, in create_p4d_mapping() argument
628 if (p4d_val(p4dp[p4d_index]) == 0) in create_p4d_mapping()
629 p4dp[p4d_index] = pfn_p4d(PFN_DOWN(pa), prot); in create_p4d_mapping()
633 if (p4d_val(p4dp[p4d_index]) == 0) { in create_p4d_mapping()
635 p4dp[p4d_index] = pfn_p4d(PFN_DOWN(next_phys), PAGE_TABLE); in create_p4d_mapping()
639 next_phys = PFN_PHYS(_p4d_pfn(p4dp[p4d_index])); in create_p4d_mapping()
1658 p4d_t *p4dp, p4d; in remove_p4d_mapping() local
1663 p4dp = p4d_base + p4d_index(addr); in remove_p4d_mapping()
1664 p4d = p4dp_get(p4dp); in remove_p4d_mapping()
1670 p4d_clear(p4dp); in remove_p4d_mapping()
[all …]
/linux/arch/arm64/mm/
H A Dkasan_init.c89 static pud_t *__init kasan_pud_offset(p4d_t *p4dp, unsigned long addr, int node, in kasan_pud_offset() argument
92 if (p4d_none(READ_ONCE(*p4dp))) { in kasan_pud_offset()
96 __p4d_populate(p4dp, pud_phys, P4D_TYPE_TABLE); in kasan_pud_offset()
99 return early ? pud_offset_kimg(p4dp, addr) : pud_offset(p4dp, addr); in kasan_pud_offset()
144 static void __init kasan_pud_populate(p4d_t *p4dp, unsigned long addr, in kasan_pud_populate() argument
148 pud_t *pudp = kasan_pud_offset(p4dp, addr, node, early); in kasan_pud_populate()
160 p4d_t *p4dp = kasan_p4d_offset(pgdp, addr, node, early); in kasan_p4d_populate() local
164 kasan_pud_populate(p4dp, addr, next, node, early); in kasan_p4d_populate()
165 } while (p4dp++, addr = next, addr != end && p4d_none(READ_ONCE(*p4dp))); in kasan_p4d_populate()
H A Dfault.c160 p4d_t *p4dp, p4d; in show_pte() local
168 p4dp = p4d_offset(pgdp, addr); in show_pte()
169 p4d = READ_ONCE(*p4dp); in show_pte()
174 pudp = pud_offset(p4dp, addr); in show_pte()
/linux/arch/powerpc/mm/kasan/
H A Dinit_book3e_64.c35 p4d_t *p4dp; in kasan_map_kernel_page() local
41 p4dp = p4d_offset(pgdp, ea); in kasan_map_kernel_page()
42 if (kasan_pud_table(*p4dp)) { in kasan_map_kernel_page()
45 p4d_populate(&init_mm, p4dp, pudp); in kasan_map_kernel_page()
47 pudp = pud_offset(p4dp, ea); in kasan_map_kernel_page()
/linux/arch/arm64/include/asm/
H A Dpgtable.h971 static inline void set_p4d(p4d_t *p4dp, p4d_t p4d) in set_p4d() argument
973 if (in_swapper_pgdir(p4dp)) { in set_p4d()
974 set_swapper_pgd((pgd_t *)p4dp, __pgd(p4d_val(p4d))); in set_p4d()
978 WRITE_ONCE(*p4dp, p4d); in set_p4d()
982 static inline void p4d_clear(p4d_t *p4dp) in p4d_clear() argument
985 set_p4d(p4dp, __p4d(0)); in p4d_clear()
995 static inline pud_t *p4d_to_folded_pud(p4d_t *p4dp, unsigned long addr) in p4d_to_folded_pud() argument
998 VM_BUG_ON(((addr >> P4D_SHIFT) ^ ((u64)p4dp >> 3)) % PTRS_PER_P4D); in p4d_to_folded_pud()
1000 return (pud_t *)PTR_ALIGN_DOWN(p4dp, PAGE_SIZE) + pud_index(addr); in p4d_to_folded_pud()
1008 static inline phys_addr_t pud_offset_phys(p4d_t *p4dp, unsigned long addr) in pud_offset_phys() argument
[all …]
/linux/arch/x86/include/asm/
H A Dpgtable_64.h138 static inline void native_set_p4d(p4d_t *p4dp, p4d_t p4d) in native_set_p4d() argument
144 WRITE_ONCE(*p4dp, p4d); in native_set_p4d()
149 pgd = pti_set_user_pgtbl((pgd_t *)p4dp, pgd); in native_set_p4d()
150 WRITE_ONCE(*p4dp, native_make_p4d(native_pgd_val(pgd))); in native_set_p4d()
H A Dpgtable.h73 # define set_p4d(p4dp, p4d) native_set_p4d(p4dp, p4d) argument
1437 static inline p4d_t *kernel_to_user_p4dp(p4d_t *p4dp) in kernel_to_user_p4dp() argument
1439 return ptr_set_bit(p4dp, PTI_PGTABLE_SWITCH_BIT); in kernel_to_user_p4dp()
1442 static inline p4d_t *user_to_kernel_p4dp(p4d_t *p4dp) in user_to_kernel_p4dp() argument
1444 return ptr_clear_bit(p4dp, PTI_PGTABLE_SWITCH_BIT); in user_to_kernel_p4dp()
1725 #define set_p4d_safe(p4dp, p4d) \ argument
1727 WARN_ON_ONCE(p4d_present(*p4dp) && !p4d_same(*p4dp, p4d)); \
1728 set_p4d(p4dp, p4d); \
/linux/arch/sparc/mm/
H A Dfault_64.c82 p4d_t *p4dp; in get_user_insn() local
91 p4dp = p4d_offset(pgdp, tpc); in get_user_insn()
92 if (p4d_none(*p4dp) || unlikely(p4d_bad(*p4dp))) in get_user_insn()
94 pudp = pud_offset(p4dp, tpc); in get_user_insn()
/linux/arch/powerpc/include/asm/nohash/64/
H A Dpgtable-4k.h67 static inline void p4d_clear(p4d_t *p4dp) in p4d_clear() argument
69 *p4dp = __p4d(0); in p4d_clear()
/linux/include/trace/events/
H A Dxen.h224 TP_PROTO(p4d_t *p4dp, p4d_t *user_p4dp, p4d_t p4dval),
225 TP_ARGS(p4dp, user_p4dp, p4dval),
227 __field(p4d_t *, p4dp)
231 TP_fast_assign(__entry->p4dp = p4dp;
235 __entry->p4dp, __entry->user_p4dp,
/linux/arch/arm/mm/
H A Dkasan_init.c128 p4d_t *p4dp; in kasan_pgd_populate() local
155 p4dp = p4d_offset(pgdp, addr); in kasan_pgd_populate()
156 pudp = pud_offset(p4dp, addr); in kasan_pgd_populate()
/linux/arch/x86/boot/compressed/
H A Dident_map_64.c260 p4d_t *p4dp; in set_clr_page_flags() local
283 p4dp = p4d_offset(pgdp, address); in set_clr_page_flags()
284 pudp = pud_offset(p4dp, address); in set_clr_page_flags()
/linux/arch/arc/include/asm/
H A Dpgtable-levels.h113 #define set_p4d(p4dp, p4d) (*(p4dp) = p4d) argument
/linux/arch/riscv/include/asm/
H A Dpgtable-64.h276 static inline void set_p4d(p4d_t *p4dp, p4d_t p4d) in set_p4d() argument
279 WRITE_ONCE(*p4dp, p4d); in set_p4d()
281 set_pud((pud_t *)p4dp, (pud_t){ p4d_val(p4d) }); in set_p4d()
H A Dpgtable.h1275 #define set_p4d_safe(p4dp, p4d) \ argument
1277 WARN_ON_ONCE(p4d_present(*p4dp) && !p4d_same(*p4dp, p4d)); \
1278 set_p4d(p4dp, p4d); \
/linux/arch/powerpc/lib/
H A Dcode-patching.c251 p4d_t *p4dp; in unmap_patch_area() local
258 p4dp = p4d_offset(pgdp, addr); in unmap_patch_area()
259 if (WARN_ON(p4d_none(*p4dp))) in unmap_patch_area()
262 pudp = pud_offset(p4dp, addr); in unmap_patch_area()
/linux/drivers/misc/sgi-gru/
H A Dgrufault.c209 p4d_t *p4dp; in atomic_pte_lookup() local
218 p4dp = p4d_offset(pgdp, vaddr); in atomic_pte_lookup()
219 if (unlikely(p4d_none(*p4dp))) in atomic_pte_lookup()
222 pudp = pud_offset(p4dp, vaddr); in atomic_pte_lookup()
/linux/mm/
H A Dpagewalk.c909 p4d_t *p4dp; in folio_walk_start() local
921 p4dp = p4d_offset(pgdp, addr); in folio_walk_start()
922 if (p4d_none_or_clear_bad(p4dp)) in folio_walk_start()
925 pudp = pud_offset(p4dp, addr); in folio_walk_start()
H A Dmigrate_device.c981 p4d_t *p4dp; in migrate_vma_insert_page() local
992 p4dp = p4d_alloc(mm, pgdp, addr); in migrate_vma_insert_page()
993 if (!p4dp) in migrate_vma_insert_page()
995 pudp = pud_alloc(mm, p4dp, addr); in migrate_vma_insert_page()
/linux/arch/s390/include/asm/
H A Dpgtable.h966 static inline void set_p4d(p4d_t *p4dp, p4d_t p4d) in set_p4d() argument
968 WRITE_ONCE(*p4dp, p4d); in set_p4d()
1437 static inline pud_t *pud_offset_lockless(p4d_t *p4dp, p4d_t p4d, unsigned long address) in pud_offset_lockless() argument
1441 return (pud_t *) p4dp; in pud_offset_lockless()
1445 static inline pud_t *pud_offset(p4d_t *p4dp, unsigned long address) in pud_offset() argument
1447 return pud_offset_lockless(p4dp, *p4dp, address); in pud_offset()
/linux/arch/mips/mm/
H A Dtlb-r4k.c301 p4d_t *p4dp; in __update_tlb() local
327 p4dp = p4d_offset(pgdp, address); in __update_tlb()
328 pudp = pud_offset(p4dp, address); in __update_tlb()
/linux/arch/sparc/kernel/
H A Dsignal32.c300 p4d_t *p4dp; in flush_signal_insns() local
320 p4dp = p4d_offset(pgdp, address); in flush_signal_insns()
321 if (p4d_none(*p4dp)) in flush_signal_insns()
323 pudp = pud_offset(p4dp, address); in flush_signal_insns()
/linux/arch/loongarch/include/asm/
H A Dpgtable.h182 static inline void p4d_clear(p4d_t *p4dp) in p4d_clear() argument
184 set_p4d(p4dp, __p4d((unsigned long)invalid_pud_table)); in p4d_clear()

12