/kernel/linux/linux-5.10/arch/arm64/include/asm/ |
H A D | pgalloc.h | 23 static inline void __pud_populate(pud_t *pudp, phys_addr_t pmdp, pudval_t prot) in __pud_populate() argument 25 set_pud(pudp, __pud(__phys_to_pud_val(pmdp) | prot)); in __pud_populate() 28 static inline void pud_populate(struct mm_struct *mm, pud_t *pudp, pmd_t *pmdp) in pud_populate() argument 30 __pud_populate(pudp, __pa(pmdp), PMD_TYPE_TABLE); in pud_populate() 33 static inline void __pud_populate(pud_t *pudp, phys_addr_t pmdp, pudval_t prot) in __pud_populate() argument 41 static inline void __p4d_populate(p4d_t *p4dp, phys_addr_t pudp, p4dval_t prot) in __p4d_populate() argument 43 set_p4d(p4dp, __p4d(__phys_to_p4d_val(pudp) | prot)); in __p4d_populate() 46 static inline void p4d_populate(struct mm_struct *mm, p4d_t *p4dp, pud_t *pudp) in p4d_populate() argument 48 __p4d_populate(p4dp, __pa(pudp), PUD_TYPE_TABLE); in p4d_populate() 51 static inline void __p4d_populate(p4d_t *p4dp, phys_addr_t pudp, p4dval_ argument [all...] |
/kernel/linux/linux-6.6/arch/arm64/include/asm/ |
H A D | pgalloc.h | 23 static inline void __pud_populate(pud_t *pudp, phys_addr_t pmdp, pudval_t prot) in __pud_populate() argument 25 set_pud(pudp, __pud(__phys_to_pud_val(pmdp) | prot)); in __pud_populate() 28 static inline void pud_populate(struct mm_struct *mm, pud_t *pudp, pmd_t *pmdp) in pud_populate() argument 33 __pud_populate(pudp, __pa(pmdp), pudval); in pud_populate() 36 static inline void __pud_populate(pud_t *pudp, phys_addr_t pmdp, pudval_t prot) in __pud_populate() argument 44 static inline void __p4d_populate(p4d_t *p4dp, phys_addr_t pudp, p4dval_t prot) in __p4d_populate() argument 46 set_p4d(p4dp, __p4d(__phys_to_p4d_val(pudp) | prot)); in __p4d_populate() 49 static inline void p4d_populate(struct mm_struct *mm, p4d_t *p4dp, pud_t *pudp) in p4d_populate() argument 54 __p4d_populate(p4dp, __pa(pudp), p4dval); in p4d_populate() 57 static inline void __p4d_populate(p4d_t *p4dp, phys_addr_t pudp, p4dval_ argument [all...] |
/kernel/linux/linux-5.10/arch/arm64/mm/ |
H A D | mmu.c | 213 static void init_pmd(pud_t *pudp, unsigned long addr, unsigned long end, in init_pmd() argument 220 pmdp = pmd_set_fixmap_offset(pudp, addr); in init_pmd() 250 static void alloc_init_cont_pmd(pud_t *pudp, unsigned long addr, in alloc_init_cont_pmd() argument 256 pud_t pud = READ_ONCE(*pudp); in alloc_init_cont_pmd() 266 __pud_populate(pudp, pmd_phys, PUD_TYPE_TABLE); in alloc_init_cont_pmd() 267 pud = READ_ONCE(*pudp); in alloc_init_cont_pmd() 281 init_pmd(pudp, addr, next, phys, __prot, pgtable_alloc, flags); in alloc_init_cont_pmd() 305 pud_t *pudp; in alloc_init_pud() local 324 pudp = pud_set_fixmap_offset(p4dp, addr); in alloc_init_pud() 326 pud_t old_pud = READ_ONCE(*pudp); in alloc_init_pud() 775 pud_t *pudp, pud; kern_addr_valid() local 872 unmap_hotplug_pmd_range(pud_t *pudp, unsigned long addr, unsigned long end, bool free_mapped, struct vmem_altmap *altmap) unmap_hotplug_pmd_range() argument 910 pud_t *pudp, pud; unmap_hotplug_pud_range() local 1020 free_empty_pmd_table(pud_t *pudp, unsigned long addr, unsigned long end, unsigned long floor, unsigned long ceiling) free_empty_pmd_table() argument 1064 pud_t *pudp, pud; free_empty_pud_table() local 1153 pud_t *pudp; vmemmap_populate() local 1212 pud_t *pudp = fixmap_pud(addr); fixmap_pmd() local 1235 pud_t *pudp; early_fixmap_init() local 1380 pud_set_huge(pud_t *pudp, phys_addr_t phys, pgprot_t prot) pud_set_huge() argument 1408 pud_clear_huge(pud_t *pudp) pud_clear_huge() argument 1443 pud_free_pmd_page(pud_t *pudp, unsigned long addr) pud_free_pmd_page() argument [all...] |
H A D | hugetlbpage.c | 108 pud_t *pudp; in find_num_contig() local 113 pudp = pud_offset(p4dp, addr); in find_num_contig() 114 pmdp = pmd_offset(pudp, addr); in find_num_contig() 260 pud_t *pudp; in huge_pte_alloc() local 266 pudp = pud_alloc(mm, p4dp, addr); in huge_pte_alloc() 267 if (!pudp) in huge_pte_alloc() 271 ptep = (pte_t *)pudp; in huge_pte_alloc() 273 pmdp = pmd_alloc(mm, pudp, addr); in huge_pte_alloc() 288 pud_none(READ_ONCE(*pudp))) in huge_pte_alloc() 289 ptep = huge_pmd_share(mm, addr, pudp); in huge_pte_alloc() 306 pud_t *pudp, pud; huge_pte_offset() local [all...] |
H A D | kasan_init.c | 73 static pmd_t *__init kasan_pmd_offset(pud_t *pudp, unsigned long addr, int node, in kasan_pmd_offset() argument 76 if (pud_none(READ_ONCE(*pudp))) { in kasan_pmd_offset() 80 __pud_populate(pudp, pmd_phys, PMD_TYPE_TABLE); in kasan_pmd_offset() 83 return early ? pmd_offset_kimg(pudp, addr) : pmd_offset(pudp, addr); in kasan_pmd_offset() 116 static void __init kasan_pmd_populate(pud_t *pudp, unsigned long addr, in kasan_pmd_populate() argument 120 pmd_t *pmdp = kasan_pmd_offset(pudp, addr, node, early); in kasan_pmd_populate() 132 pud_t *pudp = kasan_pud_offset(p4dp, addr, node, early); in kasan_pud_populate() local 136 kasan_pmd_populate(pudp, addr, next, node, early); in kasan_pud_populate() 137 } while (pudp in kasan_pud_populate() [all...] |
/kernel/linux/linux-5.10/arch/s390/mm/ |
H A D | pageattr.c | 154 static int walk_pmd_level(pud_t *pudp, unsigned long addr, unsigned long end, in walk_pmd_level() argument 161 pmdp = pmd_offset(pudp, addr); in walk_pmd_level() 186 static int split_pud_page(pud_t *pudp, unsigned long addr) in split_pud_page() argument 196 pmd_addr = pud_pfn(*pudp) << PAGE_SHIFT; in split_pud_page() 197 ro = !!(pud_val(*pudp) & _REGION_ENTRY_PROTECT); in split_pud_page() 198 nx = !!(pud_val(*pudp) & _REGION_ENTRY_NOEXEC); in split_pud_page() 209 pgt_set((unsigned long *)pudp, pud_val(new), addr, CRDTE_DTT_REGION3); in split_pud_page() 215 static void modify_pud_page(pud_t *pudp, unsigned long addr, in modify_pud_page() argument 218 pud_t new = *pudp; in modify_pud_page() 228 pgt_set((unsigned long *)pudp, pud_va in modify_pud_page() 235 pud_t *pudp; walk_pud_level() local [all...] |
H A D | hugetlbpage.c | 183 pud_t *pudp = (pud_t *) ptep; in huge_ptep_get_and_clear() local 186 pudp_xchg_direct(mm, addr, pudp, __pud(_REGION3_ENTRY_EMPTY)); in huge_ptep_get_and_clear() 197 pud_t *pudp; in huge_pte_alloc() local 203 pudp = pud_alloc(mm, p4dp, addr); in huge_pte_alloc() 204 if (pudp) { in huge_pte_alloc() 206 return (pte_t *) pudp; in huge_pte_alloc() 208 pmdp = pmd_alloc(mm, pudp, addr); in huge_pte_alloc() 219 pud_t *pudp; in huge_pte_offset() local 226 pudp = pud_offset(p4dp, addr); in huge_pte_offset() 227 if (pud_present(*pudp)) { in huge_pte_offset() [all...] |
/kernel/linux/linux-5.10/arch/powerpc/mm/nohash/ |
H A D | book3e_pgtable.c | 77 pud_t *pudp; in map_kernel_page() local 85 pudp = pud_alloc(&init_mm, p4dp, ea); in map_kernel_page() 86 if (!pudp) in map_kernel_page() 88 pmdp = pmd_alloc(&init_mm, pudp, ea); in map_kernel_page() 98 pudp = early_alloc_pgtable(PUD_TABLE_SIZE); in map_kernel_page() 99 p4d_populate(&init_mm, p4dp, pudp); in map_kernel_page() 101 pudp = pud_offset(p4dp, ea); in map_kernel_page() 102 if (pud_none(*pudp)) { in map_kernel_page() 104 pud_populate(&init_mm, pudp, pmdp); in map_kernel_page() 106 pmdp = pmd_offset(pudp, e in map_kernel_page() [all...] |
/kernel/linux/linux-6.6/arch/powerpc/mm/nohash/ |
H A D | book3e_pgtable.c | 78 pud_t *pudp; in map_kernel_page() local 86 pudp = pud_alloc(&init_mm, p4dp, ea); in map_kernel_page() 87 if (!pudp) in map_kernel_page() 89 pmdp = pmd_alloc(&init_mm, pudp, ea); in map_kernel_page() 99 pudp = early_alloc_pgtable(PUD_TABLE_SIZE); in map_kernel_page() 100 p4d_populate(&init_mm, p4dp, pudp); in map_kernel_page() 102 pudp = pud_offset(p4dp, ea); in map_kernel_page() 103 if (pud_none(*pudp)) { in map_kernel_page() 105 pud_populate(&init_mm, pudp, pmdp); in map_kernel_page() 107 pmdp = pmd_offset(pudp, e in map_kernel_page() [all...] |
/kernel/linux/linux-5.10/mm/ |
H A D | debug_vm_pgtable.c | 335 struct vm_area_struct *vma, pud_t *pudp, in pud_advanced_tests() 349 set_pud_at(mm, vaddr, pudp, pud); in pud_advanced_tests() 350 pudp_set_wrprotect(mm, vaddr, pudp); in pud_advanced_tests() 351 pud = READ_ONCE(*pudp); in pud_advanced_tests() 355 pudp_huge_get_and_clear(mm, vaddr, pudp); in pud_advanced_tests() 356 pud = READ_ONCE(*pudp); in pud_advanced_tests() 362 set_pud_at(mm, vaddr, pudp, pud); in pud_advanced_tests() 365 pudp_set_access_flags(vma, vaddr, pudp, pud, 1); in pud_advanced_tests() 366 pud = READ_ONCE(*pudp); in pud_advanced_tests() 370 pudp_huge_get_and_clear_full(mm, vaddr, pudp, in pud_advanced_tests() 334 pud_advanced_tests(struct mm_struct *mm, struct vm_area_struct *vma, pud_t *pudp, unsigned long pfn, unsigned long vaddr, pgprot_t prot) pud_advanced_tests() argument 402 pud_huge_tests(pud_t *pudp, unsigned long pfn, pgprot_t prot) pud_huge_tests() argument 421 pud_huge_tests(pud_t *pudp, unsigned long pfn, pgprot_t prot) pud_huge_tests() argument 426 pud_advanced_tests(struct mm_struct *mm, struct vm_area_struct *vma, pud_t *pudp, unsigned long pfn, unsigned long vaddr, pgprot_t prot) pud_advanced_tests() argument 433 pud_huge_tests(pud_t *pudp, unsigned long pfn, pgprot_t prot) pud_huge_tests() argument 446 pud_advanced_tests(struct mm_struct *mm, struct vm_area_struct *vma, pud_t *pudp, unsigned long pfn, unsigned long vaddr, pgprot_t prot) pud_advanced_tests() argument 457 pud_huge_tests(pud_t *pudp, unsigned long pfn, pgprot_t prot) pud_huge_tests() argument 482 pud_clear_tests(struct mm_struct *mm, pud_t *pudp) pud_clear_tests() argument 497 pud_populate_tests(struct mm_struct *mm, pud_t *pudp, pmd_t *pmdp) pud_populate_tests() argument 515 pud_clear_tests(struct mm_struct *mm, pud_t *pudp) pud_clear_tests() argument 516 pud_populate_tests(struct mm_struct *mm, pud_t *pudp, pmd_t *pmdp) pud_populate_tests() argument 538 p4d_populate_tests(struct mm_struct *mm, p4d_t *p4dp, pud_t *pudp) p4d_populate_tests() argument 595 p4d_populate_tests(struct mm_struct *mm, p4d_t *p4dp, pud_t *pudp) p4d_populate_tests() argument 979 pud_t *pudp, *saved_pudp; debug_vm_pgtable() local [all...] |
/kernel/linux/linux-6.6/arch/arm64/mm/ |
H A D | mmu.c | 235 static void init_pmd(pud_t *pudp, unsigned long addr, unsigned long end, in init_pmd() argument 242 pmdp = pmd_set_fixmap_offset(pudp, addr); in init_pmd() 272 static void alloc_init_cont_pmd(pud_t *pudp, unsigned long addr, in alloc_init_cont_pmd() argument 278 pud_t pud = READ_ONCE(*pudp); in alloc_init_cont_pmd() 292 __pud_populate(pudp, pmd_phys, pudval); in alloc_init_cont_pmd() 293 pud = READ_ONCE(*pudp); in alloc_init_cont_pmd() 307 init_pmd(pudp, addr, next, phys, __prot, pgtable_alloc, flags); in alloc_init_cont_pmd() 319 pud_t *pudp; in alloc_init_pud() local 336 pudp = pud_set_fixmap_offset(p4dp, addr); in alloc_init_pud() 338 pud_t old_pud = READ_ONCE(*pudp); in alloc_init_pud() 870 unmap_hotplug_pmd_range(pud_t *pudp, unsigned long addr, unsigned long end, bool free_mapped, struct vmem_altmap *altmap) unmap_hotplug_pmd_range() argument 908 pud_t *pudp, pud; unmap_hotplug_pud_range() local 1018 free_empty_pmd_table(pud_t *pudp, unsigned long addr, unsigned long end, unsigned long floor, unsigned long ceiling) free_empty_pmd_table() argument 1062 pud_t *pudp, pud; free_empty_pud_table() local 1171 pud_set_huge(pud_t *pudp, phys_addr_t phys, pgprot_t prot) pud_set_huge() argument 1199 pud_clear_huge(pud_t *pudp) pud_clear_huge() argument 1234 pud_free_pmd_page(pud_t *pudp, unsigned long addr) pud_free_pmd_page() argument [all...] |
H A D | hugetlbpage.c | 108 pud_t *pudp; in find_num_contig() local 113 pudp = pud_offset(p4dp, addr); in find_num_contig() 114 pmdp = pmd_offset(pudp, addr); in find_num_contig() 281 pud_t *pudp; in huge_pte_alloc() local 287 pudp = pud_alloc(mm, p4dp, addr); in huge_pte_alloc() 288 if (!pudp) in huge_pte_alloc() 292 ptep = (pte_t *)pudp; in huge_pte_alloc() 294 pmdp = pmd_alloc(mm, pudp, addr); in huge_pte_alloc() 301 if (want_pmd_share(vma, addr) && pud_none(READ_ONCE(*pudp))) in huge_pte_alloc() 302 ptep = huge_pmd_share(mm, vma, addr, pudp); in huge_pte_alloc() 319 pud_t *pudp, pud; huge_pte_offset() local [all...] |
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() 119 static void __init kasan_pmd_populate(pud_t *pudp, unsigned long addr, in kasan_pmd_populate() argument 123 pmd_t *pmdp = kasan_pmd_offset(pudp, addr, node, early); in kasan_pmd_populate() 135 pud_t *pudp = kasan_pud_offset(p4dp, addr, node, early); in kasan_pud_populate() local 139 kasan_pmd_populate(pudp, addr, next, node, early); in kasan_pud_populate() 140 } while (pudp in kasan_pud_populate() [all...] |
H A D | fixmap.c | 51 static void __init early_fixmap_init_pmd(pud_t *pudp, unsigned long addr, in early_fixmap_init_pmd() argument 55 pud_t pud = READ_ONCE(*pudp); in early_fixmap_init_pmd() 59 __pud_populate(pudp, __pa_symbol(bm_pmd), PUD_TYPE_TABLE); in early_fixmap_init_pmd() 61 pmdp = pmd_offset_kimg(pudp, addr); in early_fixmap_init_pmd() 73 pud_t *pudp; in early_fixmap_init_pud() local 88 pudp = pud_offset_kimg(p4dp, addr); in early_fixmap_init_pud() 89 early_fixmap_init_pmd(pudp, addr, end); in early_fixmap_init_pud()
|
/kernel/linux/linux-6.6/arch/s390/mm/ |
H A D | hugetlbpage.c | 182 pud_t *pudp = (pud_t *) ptep; in huge_ptep_get_and_clear() local 185 pudp_xchg_direct(mm, addr, pudp, __pud(_REGION3_ENTRY_EMPTY)); in huge_ptep_get_and_clear() 196 pud_t *pudp; in huge_pte_alloc() local 202 pudp = pud_alloc(mm, p4dp, addr); in huge_pte_alloc() 203 if (pudp) { in huge_pte_alloc() 205 return (pte_t *) pudp; in huge_pte_alloc() 207 pmdp = pmd_alloc(mm, pudp, addr); in huge_pte_alloc() 218 pud_t *pudp; in huge_pte_offset() local 225 pudp = pud_offset(p4dp, addr); in huge_pte_offset() 226 if (pud_present(*pudp)) { in huge_pte_offset() [all...] |
H A D | pageattr.c | 175 static int walk_pmd_level(pud_t *pudp, unsigned long addr, unsigned long end, in walk_pmd_level() argument 183 pmdp = pmd_offset(pudp, addr); in walk_pmd_level() 211 static int split_pud_page(pud_t *pudp, unsigned long addr) in split_pud_page() argument 221 pmd_addr = pud_pfn(*pudp) << PAGE_SHIFT; in split_pud_page() 222 ro = !!(pud_val(*pudp) & _REGION_ENTRY_PROTECT); in split_pud_page() 223 nx = !!(pud_val(*pudp) & _REGION_ENTRY_NOEXEC); in split_pud_page() 234 pgt_set((unsigned long *)pudp, pud_val(new), addr, CRDTE_DTT_REGION3); in split_pud_page() 240 static void modify_pud_page(pud_t *pudp, unsigned long addr, in modify_pud_page() argument 243 pud_t new = *pudp; in modify_pud_page() 261 pgt_set((unsigned long *)pudp, pud_va in modify_pud_page() 269 pud_t *pudp; walk_pud_level() local [all...] |
/kernel/linux/linux-6.6/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(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()
|
/kernel/linux/linux-6.6/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()
|
/kernel/linux/linux-6.6/arch/riscv/mm/ |
H A D | kasan_init.c | 83 pud_t *pudp, *p; in kasan_populate_pud() local 91 pudp = pud_offset(p4d, vaddr); in kasan_populate_pud() 96 if (pud_none(*pudp) && IS_ALIGNED(vaddr, PUD_SIZE) && (next - vaddr) >= PUD_SIZE) { in kasan_populate_pud() 99 set_pud(pudp, pfn_pud(PFN_DOWN(phys_addr), PAGE_KERNEL)); in kasan_populate_pud() 105 kasan_populate_pmd(pudp, vaddr, next); in kasan_populate_pud() 106 } while (pudp++, vaddr = next, vaddr != end); in kasan_populate_pud() 165 pud_t *pudp, *base_pud; in kasan_early_clear_pud() local 169 pudp = (pud_t *)p4dp; in kasan_early_clear_pud() 172 pudp = base_pud + pud_index(vaddr); in kasan_early_clear_pud() 179 pud_clear(pudp); in kasan_early_clear_pud() 235 pud_t *pudp, *base_pud; kasan_early_populate_pud() local [all...] |
/kernel/linux/linux-5.10/arch/x86/include/asm/ |
H A D | pgtable-3level.h | 103 static inline void native_set_pud(pud_t *pudp, pud_t pud) in native_set_pud() argument 106 pud.p4d.pgd = pti_set_user_pgtbl(&pudp->p4d.pgd, pud.p4d.pgd); in native_set_pud() 108 set_64bit((unsigned long long *)(pudp), native_pud_val(pud)); in native_set_pud() 132 static inline void native_pud_clear(pud_t *pudp) in native_pud_clear() argument 136 static inline void pud_clear(pud_t *pudp) in pud_clear() argument 138 set_pud(pudp, __pud(0)); in pud_clear() 232 static inline pud_t native_pudp_get_and_clear(pud_t *pudp) in native_pudp_get_and_clear() argument 234 union split_pud res, *orig = (union split_pud *)pudp; in native_pudp_get_and_clear() 237 pti_set_user_pgtbl(&pudp->p4d.pgd, __pgd(0)); in native_pudp_get_and_clear()
|
/kernel/linux/linux-6.6/arch/powerpc/mm/book3s64/ |
H A D | pgtable.c | 69 pud_t *pudp, pud_t entry, int dirty) in pudp_set_access_flags() 73 WARN_ON(!pud_devmap(*pudp)); in pudp_set_access_flags() 74 assert_spin_locked(pud_lockptr(vma->vm_mm, pudp)); in pudp_set_access_flags() 76 changed = !pud_same(*(pudp), entry); in pudp_set_access_flags() 82 __ptep_set_access_flags(vma, pudp_ptep(pudp), in pudp_set_access_flags() 96 unsigned long address, pud_t *pudp) in pudp_test_and_clear_young() 98 return __pudp_test_and_clear_young(vma->vm_mm, address, pudp); in pudp_test_and_clear_young() 123 pud_t *pudp, pud_t pud) in set_pud_at() 131 WARN_ON(pte_hw_valid(pud_pte(*pudp))); in set_pud_at() 132 assert_spin_locked(pud_lockptr(mm, pudp)); in set_pud_at() 68 pudp_set_access_flags(struct vm_area_struct *vma, unsigned long address, pud_t *pudp, pud_t entry, int dirty) pudp_set_access_flags() argument 95 pudp_test_and_clear_young(struct vm_area_struct *vma, unsigned long address, pud_t *pudp) pudp_test_and_clear_young() argument 122 set_pud_at(struct mm_struct *mm, unsigned long addr, pud_t *pudp, pud_t pud) set_pud_at() argument 196 pudp_huge_get_and_clear_full(struct vm_area_struct *vma, unsigned long addr, pud_t *pudp, int full) pudp_huge_get_and_clear_full() argument [all...] |
H A D | radix_pgtable.c | 78 pud_t *pudp; in early_map_kernel_page() local 85 pudp = early_alloc_pgtable(PAGE_SIZE, nid, in early_map_kernel_page() 87 p4d_populate(&init_mm, p4dp, pudp); in early_map_kernel_page() 89 pudp = pud_offset(p4dp, ea); in early_map_kernel_page() 91 ptep = (pte_t *)pudp; in early_map_kernel_page() 94 if (pud_none(*pudp)) { in early_map_kernel_page() 97 pud_populate(&init_mm, pudp, pmdp); in early_map_kernel_page() 99 pmdp = pmd_offset(pudp, ea); in early_map_kernel_page() 130 pud_t *pudp; in __map_kernel_page() local 153 pudp in __map_kernel_page() 191 pud_t *pudp; radix__change_memory_range() local 1014 vmemmap_pmd_alloc(pud_t *pudp, int node, unsigned long address) vmemmap_pmd_alloc() argument 1375 radix__pud_hugepage_update(struct mm_struct *mm, unsigned long addr, pud_t *pudp, unsigned long clr, unsigned long set) radix__pud_hugepage_update() argument 1468 radix__pudp_huge_get_and_clear(struct mm_struct *mm, unsigned long addr, pud_t *pudp) radix__pudp_huge_get_and_clear() argument [all...] |
/kernel/linux/linux-6.6/mm/ |
H A D | debug_vm_pgtable.c | 66 pud_t *pudp; member 371 set_pud_at(args->mm, vaddr, args->pudp, pud); in pud_advanced_tests() 373 pudp_set_wrprotect(args->mm, vaddr, args->pudp); in pud_advanced_tests() 374 pud = READ_ONCE(*args->pudp); in pud_advanced_tests() 378 pudp_huge_get_and_clear(args->mm, vaddr, args->pudp); in pud_advanced_tests() 379 pud = READ_ONCE(*args->pudp); in pud_advanced_tests() 386 set_pud_at(args->mm, vaddr, args->pudp, pud); in pud_advanced_tests() 390 pudp_set_access_flags(args->vma, vaddr, args->pudp, pud, 1); in pud_advanced_tests() 391 pud = READ_ONCE(*args->pudp); in pud_advanced_tests() 395 pudp_huge_get_and_clear_full(args->vma, vaddr, args->pudp, in pud_advanced_tests() [all...] |
/kernel/linux/linux-5.10/arch/riscv/include/asm/ |
H A D | pgtable-64.h | 53 static inline void set_pud(pud_t *pudp, pud_t pud) in set_pud() argument 55 *pudp = pud; in set_pud() 58 static inline void pud_clear(pud_t *pudp) in pud_clear() argument 60 set_pud(pudp, __pud(0)); in pud_clear()
|
/kernel/linux/linux-6.6/arch/loongarch/mm/ |
H A D | kasan_init.c | 119 static pmd_t *__init kasan_pmd_offset(pud_t *pudp, unsigned long addr, int node, bool early) in kasan_pmd_offset() argument 121 if (__pud_none(early, READ_ONCE(*pudp))) { in kasan_pmd_offset() 126 pud_populate(&init_mm, pudp, (pmd_t *)__va(pmd_phys)); in kasan_pmd_offset() 129 return pmd_offset(pudp, addr); in kasan_pmd_offset() 160 static void __init kasan_pmd_populate(pud_t *pudp, unsigned long addr, in kasan_pmd_populate() argument 164 pmd_t *pmdp = kasan_pmd_offset(pudp, addr, node, early); in kasan_pmd_populate() 176 pud_t *pudp = kasan_pud_offset(p4dp, addr, node, early); in kasan_pud_populate() local 180 kasan_pmd_populate(pudp, addr, next, node, early); in kasan_pud_populate() 181 } while (pudp++, addr = next, addr != end); in kasan_pud_populate()
|