/linux/arch/riscv/mm/ |
H A D | kasan_init.c | 115 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_p4 in kasan_early_clear_p4d() local 234 kasan_early_populate_pud(p4d_t * p4dp,unsigned long vaddr,unsigned long end) kasan_early_populate_pud() argument 267 p4d_t *p4dp, *base_p4d; kasan_early_populate_p4d() local [all...] |
H A D | init.c | 625 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 633 if (p4d_val(p4dp[p4d_index]) == 0) in create_p4d_mapping() 634 p4dp[p4d_index] = pfn_p4d(PFN_DOWN(pa), prot); in create_p4d_mapping() 638 if (p4d_val(p4dp[p4d_index]) == 0) { in create_p4d_mapping() 640 p4dp[p4d_index] = pfn_p4d(PFN_DOWN(next_phys), PAGE_TABLE); in create_p4d_mapping() 644 next_phys = PFN_PHYS(_p4d_pfn(p4dp[p4d_index])); in create_p4d_mapping() 1734 p4d_t *p4dp, p4d; in remove_p4d_mapping() local 1739 p4dp = p4d_base + p4d_index(addr); in remove_p4d_mapping() 1740 p4d = p4dp_get(p4dp); in remove_p4d_mapping() 1746 p4d_clear(p4dp); in remove_p4d_mapping() [all …]
|
/linux/arch/s390/mm/ |
H A D | hugetlbpage.c | 209 p4d_t *p4dp; in huge_pte_alloc() local 214 p4dp = p4d_alloc(mm, pgdp, addr); in huge_pte_alloc() 215 if (p4dp) { in huge_pte_alloc() 216 pudp = pud_alloc(mm, p4dp, addr); in huge_pte_alloc() 231 p4d_t *p4dp; in huge_pte_offset() local 237 p4dp = p4d_offset(pgdp, addr); in huge_pte_offset() 238 if (p4d_present(*p4dp)) { in huge_pte_offset() 239 pudp = pud_offset(p4dp, addr); in huge_pte_offset()
|
/linux/arch/arm64/mm/ |
H A D | kasan_init.c | 89 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 D | hugetlbpage.c | 86 p4d_t *p4dp; in find_num_contig() local 91 p4dp = p4d_offset(pgdp, addr); in find_num_contig() 92 pudp = pud_offset(p4dp, addr); in find_num_contig() 251 p4d_t *p4dp; in huge_pte_alloc() local 257 p4dp = p4d_alloc(mm, pgdp, addr); in huge_pte_alloc() 258 if (!p4dp) in huge_pte_alloc() 261 pudp = pud_alloc(mm, p4dp, addr); in huge_pte_alloc() 292 p4d_t *p4dp; in huge_pte_offset() local 300 p4dp = p4d_offset(pgdp, addr); in huge_pte_offset() 301 if (!p4d_present(READ_ONCE(*p4dp))) in huge_pte_offset() [all …]
|
/linux/arch/loongarch/mm/ |
H A D | kasan_init.c | 144 static pud_t *__init kasan_pud_offset(p4d_t *p4dp, unsigned long addr, int node, bool early) in kasan_pud_offset() argument 146 if (__p4d_none(early, p4dp_get(p4dp))) { in kasan_pud_offset() 151 p4d_populate(&init_mm, p4dp, (pud_t *)__va(pud_phys)); in kasan_pud_offset() 154 return pud_offset(p4dp, addr); in kasan_pud_offset() 197 static void __init kasan_pud_populate(p4d_t *p4dp, unsigned long addr, in kasan_pud_populate() argument 201 pud_t *pudp = kasan_pud_offset(p4dp, addr, node, early); in kasan_pud_populate() 213 p4d_t *p4dp = kasan_p4d_offset(pgdp, addr, node, early); in kasan_p4d_populate() local 217 kasan_pud_populate(p4dp, addr, next, node, early); in kasan_p4d_populate() 218 } while (p4dp++, addr = next, addr != end && __p4d_none(early, READ_ONCE(*p4dp))); in kasan_p4d_populate()
|
/linux/arch/powerpc/mm/kasan/ |
H A D | init_book3e_64.c | 35 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/x86/include/asm/ |
H A D | pgtable_64.h | 142 static inline void native_set_p4d(p4d_t *p4dp, p4d_t p4d) in native_set_p4d() argument 148 WRITE_ONCE(*p4dp, p4d); in native_set_p4d() 153 pgd = pti_set_user_pgtbl((pgd_t *)p4dp, pgd); in native_set_p4d() 154 WRITE_ONCE(*p4dp, native_make_p4d(native_pgd_val(pgd))); in native_set_p4d()
|
/linux/arch/sparc/mm/ |
H A D | fault_64.c | 82 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 D | pgtable-4k.h | 67 static inline void p4d_clear(p4d_t *p4dp) in p4d_clear() argument 69 *p4dp = __p4d(0); in p4d_clear()
|
H A D | pgtable.h | 143 static inline void p4d_set(p4d_t *p4dp, unsigned long val) in p4d_set() argument 145 *p4dp = __p4d(val); in p4d_set()
|
/linux/arch/arc/include/asm/ |
H A D | pgalloc.h | 70 static inline void p4d_populate(struct mm_struct *mm, p4d_t *p4dp, pud_t *pudp) in pgd_alloc() 72 set_p4d(p4dp, __p4d((unsigned long)pudp)); 75 p4d_populate(struct mm_struct * mm,p4d_t * p4dp,pud_t * pudp) p4d_populate() argument
|
H A D | pgtable-levels.h | 113 #define set_p4d(p4dp, p4d) (*(p4dp) = p4d) argument
|
/linux/include/trace/events/ |
H A D | xen.h | 224 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 D | kasan_init.c | 128 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/mm/ |
H A D | debug_vm_pgtable.c | 51 p4d_t *p4dp; member 529 p4d_t p4d = p4dp_get(args->p4dp); in p4d_clear_tests() 536 p4d_clear(args->p4dp); in p4d_clear_tests() 537 p4d = p4dp_get(args->p4dp); in p4d_clear_tests() 554 p4d_clear(args->p4dp); in p4d_populate_tests() 555 p4d_populate(args->mm, args->p4dp, args->start_pudp); in p4d_populate_tests() 556 p4d = p4dp_get(args->p4dp); in p4d_populate_tests() 586 p4d_clear(args->p4dp); in pgd_populate_tests() 1222 args->p4dp = p4d_alloc(args->mm, args->pgdp, args->vaddr); in init_args() 1223 if (!args->p4dp) { in init_args() [all …]
|
H A D | migrate_device.c | 579 p4d_t *p4dp; in migrate_vma_insert_page() local 590 p4dp = p4d_alloc(mm, pgdp, addr); in migrate_vma_insert_page() 591 if (!p4dp) in migrate_vma_insert_page() 593 pudp = pud_alloc(mm, p4dp, addr); in migrate_vma_insert_page()
|
H A D | gup.c | 1006 unsigned long address, p4d_t *p4dp, in follow_pud_mask() argument 1015 pudp = pud_offset(p4dp, address); in follow_pud_mask() 1038 p4d_t *p4dp, p4d; in follow_p4d_mask() local 1040 p4dp = p4d_offset(pgdp, address); in follow_p4d_mask() 1041 p4d = READ_ONCE(*p4dp); in follow_p4d_mask() 1047 return follow_pud_mask(vma, address, p4dp, flags, ctx); in follow_p4d_mask() 3253 static int gup_fast_pud_range(p4d_t *p4dp, p4d_t p4d, unsigned long addr, in gup_fast_pud_range() argument 3260 pudp = pud_offset_lockless(p4dp, p4d, addr); in gup_fast_pud_range() 3284 p4d_t *p4dp; in gup_fast_p4d_range() local 3286 p4dp = p4d_offset_lockless(pgdp, pgd, addr); in gup_fast_p4d_range() [all …]
|
/linux/arch/x86/boot/compressed/ |
H A D | ident_map_64.c | 260 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/riscv/include/asm/ |
H A D | pgtable-64.h | 276 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 D | pgtable.h | 985 #define set_p4d_safe(p4dp, p4d) \ argument 987 WARN_ON_ONCE(p4d_present(*p4dp) && !p4d_same(*p4dp, p4d)); \ 988 set_p4d(p4dp, p4d); \
|
/linux/arch/powerpc/mm/book3s64/ |
H A D | hash_pgtable.c | 150 p4d_t *p4dp; in hash__map_kernel_page() local 158 p4dp = p4d_offset(pgdp, ea); in hash__map_kernel_page() 159 pudp = pud_alloc(&init_mm, p4dp, ea); in hash__map_kernel_page()
|
/linux/arch/powerpc/lib/ |
H A D | code-patching.c | 251 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 D | grufault.c | 209 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/arch/sparc/kernel/ |
H A D | signal32.c | 300 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()
|