| /linux/arch/arm64/mm/ |
| H A D | kasan_init.c | 76 static pmd_t *__init kasan_pmd_offset(pud_t *pudp, unsigned long addr, int node, in kasan_pmd_offset() argument 79 if (pud_none(READ_ONCE(*pudp))) { in kasan_pmd_offset() 83 __pud_populate(pudp, pmd_phys, PUD_TYPE_TABLE); in kasan_pmd_offset() 86 return early ? pmd_offset_kimg(pudp, addr) : pmd_offset(pudp, addr); in kasan_pmd_offset() 132 static void __init kasan_pmd_populate(pud_t *pudp, unsigned long addr, in kasan_pmd_populate() argument 136 pmd_t *pmdp = kasan_pmd_offset(pudp, addr, node, early); in kasan_pmd_populate() 148 pud_t *pudp = kasan_pud_offset(p4dp, addr, node, early); in kasan_pud_populate() local 152 kasan_pmd_populate(pudp, addr, next, node, early); in kasan_pud_populate() 153 } while (pudp++, addr = next, addr != end && pud_none(READ_ONCE(*pudp))); in kasan_pud_populate() 260 pud_t *pudp = (pud_t *)__phys_to_kimg(__pgd_to_phys(pgd)); in clone_next_level() local [all …]
|
| /linux/arch/powerpc/mm/kasan/ |
| H A D | init_book3e_64.c | 36 pud_t *pudp; in kasan_map_kernel_page() local 43 pudp = memblock_alloc_or_panic(PUD_TABLE_SIZE, PUD_TABLE_SIZE); in kasan_map_kernel_page() 44 memcpy(pudp, kasan_early_shadow_pud, PUD_TABLE_SIZE); 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() 48 if (kasan_pmd_table(*pudp)) { in kasan_map_kernel_page() 51 pud_populate(&init_mm, pudp, pmdp); in kasan_map_kernel_page() 53 pmdp = pmd_offset(pudp, ea); in kasan_map_kernel_page()
|
| /linux/arch/x86/include/asm/ |
| H A D | pgtable-3level.h | 53 static inline void native_set_pud(pud_t *pudp, pud_t pud) in native_set_pud() argument 56 pud.p4d.pgd = pti_set_user_pgtbl(&pudp->p4d.pgd, pud.p4d.pgd); in native_set_pud() 58 pxx_xchg64(pud, pudp, native_pud_val(pud)); in native_set_pud() 81 static inline void native_pud_clear(pud_t *pudp) in native_pud_clear() argument 85 static inline void pud_clear(pud_t *pudp) in pud_clear() argument 87 set_pud(pudp, __pud(0)); in pud_clear() 113 static inline pud_t native_pudp_get_and_clear(pud_t *pudp) in native_pudp_get_and_clear() argument 115 return pxx_xchg64(pud, pudp, 0ULL); in native_pudp_get_and_clear()
|
| H A D | pgtable.h | 81 # define set_pud(pudp, pud) native_set_pud(pudp, pud) argument 1198 static inline pud_t native_local_pudp_get_and_clear(pud_t *pudp) in native_local_pudp_get_and_clear() argument 1200 pud_t res = *pudp; in native_local_pudp_get_and_clear() 1202 native_pud_clear(pudp); in native_local_pudp_get_and_clear() 1214 pud_t *pudp, pud_t pud) in set_pud_at() argument 1216 page_table_check_pud_set(mm, addr, pudp, pud); in set_pud_at() 1217 native_set_pud(pudp, pud); in set_pud_at() 1294 unsigned long address, pud_t *pudp, 1301 unsigned long addr, pud_t *pudp); 1321 unsigned long addr, pud_t *pudp) in pudp_huge_get_and_clear() argument [all …]
|
| H A D | pgtable-2level.h | 25 static inline void native_set_pud(pud_t *pudp, pud_t pud) in native_set_pud() argument 39 static inline void native_pud_clear(pud_t *pudp) in native_pud_clear() argument
|
| H A D | pgtable_64.h | 113 static inline void native_set_pud(pud_t *pudp, pud_t pud) in native_set_pud() argument 115 WRITE_ONCE(*pudp, pud); in native_set_pud()
|
| /linux/arch/riscv/mm/ |
| H A D | kasan_init.c | 84 pud_t *pudp, *p; in kasan_populate_pud() local 92 pudp = pud_offset(p4d, vaddr); in kasan_populate_pud() 97 if (pud_none(pudp_get(pudp)) && IS_ALIGNED(vaddr, PUD_SIZE) && in kasan_populate_pud() 101 set_pud(pudp, pfn_pud(PFN_DOWN(phys_addr), PAGE_KERNEL)); in kasan_populate_pud() 107 kasan_populate_pmd(pudp, vaddr, next); in kasan_populate_pud() 108 } while (pudp++, vaddr = next, vaddr != end); in kasan_populate_pud() 168 pud_t *pudp, *base_pud; in kasan_early_clear_pud() local 172 pudp = (pud_t *)p4dp; in kasan_early_clear_pud() 175 pudp = base_pud + pud_index(vaddr); in kasan_early_clear_pud() 182 pud_clear(pudp); in kasan_early_clear_pud() [all …]
|
| H A D | fault.c | 32 pud_t *pudp, pud; in show_pte() local 56 pudp = pud_offset(p4dp, addr); in show_pte() 57 pud = pudp_get(pudp); in show_pte() 62 pmdp = pmd_offset(pudp, addr); in show_pte()
|
| H A D | init.c | 594 static void __meminit create_pud_mapping(pud_t *pudp, uintptr_t va, phys_addr_t pa, phys_addr_t sz, in create_pud_mapping() argument 602 if (pud_val(pudp[pud_index]) == 0) in create_pud_mapping() 603 pudp[pud_index] = pfn_pud(PFN_DOWN(pa), prot); in create_pud_mapping() 607 if (pud_val(pudp[pud_index]) == 0) { in create_pud_mapping() 609 pudp[pud_index] = pfn_pud(PFN_DOWN(next_phys), PAGE_TABLE); in create_pud_mapping() 613 next_phys = PFN_PHYS(_pud_pfn(pudp[pud_index])); in create_pud_mapping() 1602 pud_t *pudp, pud; in remove_pud_mapping() local 1607 pudp = pud_base + pud_index(addr); in remove_pud_mapping() 1608 pud = pudp_get(pudp); in remove_pud_mapping() 1614 pud_clear(pudp); in remove_pud_mapping() [all …]
|
| /linux/include/trace/events/ |
| H A D | xen.h | 207 TP_PROTO(pud_t *pudp, pud_t pudval), 208 TP_ARGS(pudp, pudval), 210 __field(pud_t *, pudp) 213 TP_fast_assign(__entry->pudp = pudp; 216 __entry->pudp, 242 TP_PROTO(pud_t *pudp, pud_t pudval), 243 TP_ARGS(pudp, pudval), 245 __field(pud_t *, pudp) 248 TP_fast_assign(__entry->pudp = pudp; 251 __entry->pudp,
|
| /linux/arch/arm/include/asm/ |
| H A D | pgtable-3level.h | 123 #define pud_clear(pudp) \ argument 125 *pudp = __pud(0); \ 126 clean_pmd_entry(pudp); \ 129 #define set_pud(pudp, pud) \ argument 131 *pudp = pud; \ 132 flush_pmd_entry(pudp); \
|
| /linux/arch/powerpc/include/asm/book3s/64/ |
| H A D | pgtable.h | 858 static inline void pud_clear(pud_t *pudp) in pud_clear() argument 865 WARN_ON((pud_val(*pudp) & (H_PAGE_HASHPTE | _PAGE_PTE)) == (H_PAGE_HASHPTE | _PAGE_PTE)); in pud_clear() 867 *pudp = __pud(0); in pud_clear() 1112 pud_t *pudp, pud_t pud); 1151 pud_hugepage_update(struct mm_struct *mm, unsigned long addr, pud_t *pudp, in pud_hugepage_update() argument 1155 return radix__pud_hugepage_update(mm, addr, pudp, clr, set); in pud_hugepage_update() 1157 return pud_val(*pudp); in pud_hugepage_update() 1176 unsigned long addr, pud_t *pudp) in __pudp_test_and_clear_young() argument 1180 if ((pud_raw(*pudp) & cpu_to_be64(_PAGE_ACCESSED | H_PAGE_HASHPTE)) == 0) in __pudp_test_and_clear_young() 1182 old = pud_hugepage_update(mm, addr, pudp, _PAGE_ACCESSED, 0); in __pudp_test_and_clear_young() [all …]
|
| H A D | radix.h | 289 pud_t *pudp, unsigned long clr, 299 unsigned long addr, pud_t *pudp);
|
| /linux/arch/arm/mm/ |
| H A D | kasan_init.c | 93 static void __init kasan_pmd_populate(pud_t *pudp, unsigned long addr, in kasan_pmd_populate() argument 97 pmd_t *pmdp = pmd_offset(pudp, addr); in kasan_pmd_populate() 129 pud_t *pudp; in kasan_pgd_populate() local 156 pudp = pud_offset(p4dp, addr); in kasan_pgd_populate() 158 kasan_pmd_populate(pudp, addr, next, early); in kasan_pgd_populate()
|
| /linux/arch/riscv/include/asm/ |
| H A D | pgtable.h | 965 pud_t *pudp, pud_t pud) in set_pud_at() argument 967 page_table_check_pud_set(mm, addr, pudp, pud); in set_pud_at() 968 return __set_pte_at(mm, (pte_t *)pudp, pud_pte(pud)); in set_pud_at() 1091 unsigned long address, pud_t *pudp, in pudp_set_access_flags() argument 1094 return ptep_set_access_flags(vma, address, (pte_t *)pudp, pud_pte(entry), dirty); in pudp_set_access_flags() 1098 unsigned long address, pud_t *pudp) in pudp_test_and_clear_young() argument 1100 return ptep_test_and_clear_young(vma, address, (pte_t *)pudp); in pudp_test_and_clear_young() 1105 unsigned long address, pud_t *pudp) in pudp_huge_get_and_clear() argument 1108 pud_t pud = __pud(xchg(&pudp->pud, 0)); in pudp_huge_get_and_clear() 1110 pud_t pud = *pudp; in pudp_huge_get_and_clear() [all …]
|
| H A D | pgtable-64.h | 203 static inline void set_pud(pud_t *pudp, pud_t pud) in set_pud() argument 205 WRITE_ONCE(*pudp, pud); in set_pud() 208 static inline void pud_clear(pud_t *pudp) in pud_clear() argument 210 set_pud(pudp, __pud(0)); in pud_clear()
|
| /linux/arch/m68k/include/asm/ |
| H A D | motorola_pgtable.h | 95 static inline void pud_set(pud_t *pudp, pmd_t *pmdp) in pud_set() argument 97 pud_val(*pudp) = _PAGE_TABLE | _PAGE_ACCESSED | __pa(pmdp); in pud_set() 131 #define pud_clear(pudp) ({ pud_val(*pudp) = 0; }) argument
|
| /linux/arch/sparc/mm/ |
| H A D | fault_64.c | 83 pud_t *pudp; in get_user_insn() local 94 pudp = pud_offset(p4dp, tpc); in get_user_insn() 95 if (pud_none(*pudp) || unlikely(pud_bad(*pudp))) in get_user_insn() 101 pmdp = pmd_offset(pudp, tpc); in get_user_insn()
|
| /linux/arch/sparc/include/asm/ |
| H A D | pgalloc_32.h | 29 static inline void pud_set(pud_t * pudp, pmd_t * pmdp) in pud_set() argument 33 set_pte((pte_t *)pudp, __pte((SRMMU_ET_PTD | (pa >> 4)))); in pud_set()
|
| /linux/mm/ |
| H A D | pagewalk.c | 904 pud_t *pudp, pud; in folio_walk_start() local 925 pudp = pud_offset(p4dp, addr); in folio_walk_start() 926 pud = pudp_get(pudp); in folio_walk_start() 931 ptl = pud_lock(vma->vm_mm, pudp); in folio_walk_start() 932 pud = pudp_get(pudp); in folio_walk_start() 936 fw->pudp = pudp; in folio_walk_start() 956 pmdp = pmd_offset(pudp, addr); in folio_walk_start()
|
| /linux/arch/x86/boot/compressed/ |
| H A D | ident_map_64.c | 261 pud_t *pudp; in set_clr_page_flags() local 284 pudp = pud_offset(p4dp, address); in set_clr_page_flags() 285 pmdp = pmd_offset(pudp, address); in set_clr_page_flags()
|
| /linux/arch/arc/include/asm/ |
| H A D | pgtable-levels.h | 135 #define set_pud(pudp, pud) (*(pudp) = pud) argument
|
| /linux/arch/s390/include/asm/ |
| H A D | pgtable.h | 971 static inline void set_pud(pud_t *pudp, pud_t pud) in set_pud() argument 973 WRITE_ONCE(*pudp, pud); in set_pud() 1451 static inline pmd_t *pmd_offset_lockless(pud_t *pudp, pud_t pud, unsigned long address) in pmd_offset_lockless() argument 1455 return (pmd_t *) pudp; in pmd_offset_lockless() 1459 static inline pmd_t *pmd_offset(pud_t *pudp, unsigned long address) in pmd_offset() argument 1461 return pmd_offset_lockless(pudp, *pudp, address); in pmd_offset() 1637 static __always_inline void __pudp_idte(unsigned long addr, pud_t *pudp, in __pudp_idte() argument 1643 r3o = __pa(pudp) - pud_index(addr) * sizeof(pud_t); in __pudp_idte() 1649 : "+m" (*pudp) in __pudp_idte() 1657 : "+m" (*pudp) in __pudp_idte()
|
| /linux/arch/arm64/include/asm/ |
| H A D | pgtable.h | 725 pud_t *pudp, pud_t pud, unsigned int nr) in __set_puds() argument 727 __set_ptes_anysz(mm, addr, (pte_t *)pudp, pud_pte(pud), nr, PUD_SIZE); in __set_puds() 729 #define set_pud_at(mm, addr, pudp, pud) __set_puds(mm, addr, pudp, pud, 1) argument 890 static inline void set_pud(pud_t *pudp, pud_t pud) in set_pud() argument 892 if (!pgtable_l4_enabled() && in_swapper_pgdir(pudp)) { in set_pud() 893 set_swapper_pgd((pgd_t *)pudp, __pgd(pud_val(pud))); in set_pud() 897 WRITE_ONCE(*pudp, pud); in set_pud() 903 static inline void pud_clear(pud_t *pudp) in pud_clear() argument 905 set_pud(pudp, __pud(0)); in pud_clear() 938 #define pmd_set_fixmap_offset(pudp, addr) ((pmd_t *)pudp) argument
|
| /linux/arch/powerpc/lib/ |
| H A D | code-patching.c | 250 pud_t *pudp; in unmap_patch_area() local 262 pudp = pud_offset(p4dp, addr); in unmap_patch_area() 263 if (WARN_ON(pud_none(*pudp))) in unmap_patch_area() 266 pmdp = pmd_offset(pudp, addr); in unmap_patch_area()
|