Home
last modified time | relevance | path

Searched refs:pmdp (Results 1 – 25 of 97) sorted by relevance

1234

/arch/powerpc/mm/book3s64/
A Dhash_pgtable.c152 pmd_t *pmdp; in hash__map_kernel_page() local
162 pmdp = pmd_alloc(&init_mm, pudp, ea); in hash__map_kernel_page()
163 if (!pmdp) in hash__map_kernel_page()
165 ptep = pte_alloc_kernel(pmdp, ea); in hash__map_kernel_page()
191 pmd_t *pmdp, unsigned long clr, in hash__pmd_hugepage_update() argument
211 : "r" (pmdp), "r" (cpu_to_be64(clr)), "m" (*pmdp), in hash__pmd_hugepage_update()
224 pmd_t *pmdp) in hash__pmdp_collapse_flush() argument
229 VM_BUG_ON(pmd_trans_huge(*pmdp)); in hash__pmdp_collapse_flush()
231 pmd = *pmdp; in hash__pmdp_collapse_flush()
232 pmd_clear(pmdp); in hash__pmdp_collapse_flush()
[all …]
A Dpgtable.c61 pmd_t *pmdp, pmd_t entry, int dirty) in pmdp_set_access_flags() argument
65 WARN_ON(!pmd_trans_huge(*pmdp)); in pmdp_set_access_flags()
68 changed = !pmd_same(*(pmdp), entry); in pmdp_set_access_flags()
101 unsigned long address, pmd_t *pmdp) in pmdp_test_and_clear_young() argument
117 pmd_t *pmdp, pmd_t pmd) in set_pmd_at() argument
125 WARN_ON(pte_hw_valid(pmd_pte(*pmdp)) && !pte_protnone(pmd_pte(*pmdp))); in set_pmd_at()
126 assert_spin_locked(pmd_lockptr(mm, pmdp)); in set_pmd_at()
180 pmd_t *pmdp) in pmdp_invalidate() argument
184 VM_WARN_ON_ONCE(!pmd_present(*pmdp)); in pmdp_invalidate()
206 VM_BUG_ON((pmd_present(*pmdp) && !pmd_trans_huge(*pmdp)) || in pmdp_huge_get_and_clear_full()
[all …]
A Dradix_pgtable.c81 pmd_t *pmdp; in early_map_kernel_page() local
103 ptep = pmdp_ptep(pmdp); in early_map_kernel_page()
133 pmd_t *pmdp; in __map_kernel_page() local
163 if (!pmdp) in __map_kernel_page()
166 ptep = pmdp_ptep(pmdp); in __map_kernel_page()
194 pmd_t *pmdp; in radix__change_memory_range() local
214 if (!pmdp) in radix__change_memory_range()
216 if (pmd_leaf(*pmdp)) { in radix__change_memory_range()
1464 pmd_t *pmdp) in radix__pmdp_collapse_flush() argument
1474 pmd = *pmdp; in radix__pmdp_collapse_flush()
[all …]
A Dhash_hugepage.c22 pmd_t *pmdp, unsigned long trap, unsigned long flags, in __hash_page_thp() argument
36 pmd_t pmd = READ_ONCE(*pmdp); in __hash_page_thp()
52 } while (!pmd_xchg(pmdp, __pmd(old_pmd), __pmd(new_pmd))); in __hash_page_thp()
77 hpte_slot_array = get_hpte_slot_array(pmdp); in __hash_page_thp()
85 flush_hash_hugepage(vsid, ea, pmdp, MMU_PAGE_64K, in __hash_page_thp()
162 *pmdp = __pmd(old_pmd); in __hash_page_thp()
186 *pmdp = __pmd(new_pmd & ~H_PAGE_BUSY); in __hash_page_thp()
/arch/powerpc/mm/nohash/
A Dbook3e_pgtable.c79 pmd_t *pmdp; in map_kernel_page() local
89 pmdp = pmd_alloc(&init_mm, pudp, ea); in map_kernel_page()
90 if (!pmdp) in map_kernel_page()
92 ptep = pte_alloc_kernel(pmdp, ea); in map_kernel_page()
104 pmdp = early_alloc_pgtable(PMD_TABLE_SIZE); in map_kernel_page()
105 pud_populate(&init_mm, pudp, pmdp); in map_kernel_page()
107 pmdp = pmd_offset(pudp, ea); in map_kernel_page()
108 if (!pmd_present(*pmdp)) { in map_kernel_page()
110 pmd_populate_kernel(&init_mm, pmdp, ptep); in map_kernel_page()
112 ptep = pte_offset_kernel(pmdp, ea); in map_kernel_page()
A D8xx.c55 pmd_t *pmdp = pmd_off_k(va); in __early_map_kernel_hugepage() local
64 if (WARN_ON(!pmd_none(*pmdp) || !pmd_none(*(pmdp + 1)))) in __early_map_kernel_hugepage()
68 pmd_populate_kernel(&init_mm, pmdp, ptep); in __early_map_kernel_hugepage()
71 pmd_populate_kernel(&init_mm, pmdp + 1, ptep); in __early_map_kernel_hugepage()
73 ptep = (pte_t *)pmdp; in __early_map_kernel_hugepage()
75 ptep = early_pte_alloc_kernel(pmdp, va); in __early_map_kernel_hugepage()
82 ptep = (pte_t *)pmdp; in __early_map_kernel_hugepage()
84 ptep = pte_offset_kernel(pmdp, va); in __early_map_kernel_hugepage()
/arch/arm64/include/asm/
A Dpgalloc.h24 static inline void __pud_populate(pud_t *pudp, phys_addr_t pmdp, pudval_t prot) in __pud_populate() argument
26 set_pud(pudp, __pud(__phys_to_pud_val(pmdp) | prot)); in __pud_populate()
29 static inline void pud_populate(struct mm_struct *mm, pud_t *pudp, pmd_t *pmdp) in pud_populate() argument
34 __pud_populate(pudp, __pa(pmdp), pudval); in pud_populate()
37 static inline void __pud_populate(pud_t *pudp, phys_addr_t pmdp, pudval_t prot) in __pud_populate() argument
98 static inline void __pmd_populate(pmd_t *pmdp, phys_addr_t ptep, in __pmd_populate() argument
101 set_pmd(pmdp, __pmd(__phys_to_pmd_val(ptep) | prot)); in __pmd_populate()
109 pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmdp, pte_t *ptep) in pmd_populate_kernel() argument
112 __pmd_populate(pmdp, __pa(ptep), in pmd_populate_kernel()
117 pmd_populate(struct mm_struct *mm, pmd_t *pmdp, pgtable_t ptep) in pmd_populate() argument
[all …]
/arch/powerpc/include/asm/nohash/32/
A Dpgalloc.h17 static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmdp, in pmd_populate_kernel() argument
21 *pmdp = __pmd((unsigned long)pte | _PMD_PRESENT); in pmd_populate_kernel()
23 *pmdp = __pmd(__pa(pte) | _PMD_PRESENT); in pmd_populate_kernel()
26 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmdp, in pmd_populate() argument
30 *pmdp = __pmd((unsigned long)pte_page | _PMD_PRESENT); in pmd_populate()
32 *pmdp = __pmd(__pa(pte_page) | _PMD_USER | _PMD_PRESENT); in pmd_populate()
/arch/sparc/mm/
A Dtlb.c226 pmd_t *pmdp, pmd_t pmd) in set_pmd_at() argument
228 pmd_t orig = *pmdp; in set_pmd_at()
230 *pmdp = pmd; in set_pmd_at()
240 old = *pmdp; in pmdp_establish()
251 pmd_t *pmdp) in pmdp_invalidate() argument
255 VM_WARN_ON_ONCE(!pmd_present(*pmdp)); in pmdp_invalidate()
256 entry = __pmd(pmd_val(*pmdp) & ~_PAGE_VALID); in pmdp_invalidate()
280 if (!pmd_huge_pte(mm, pmdp)) in pgtable_trans_huge_deposit()
284 pmd_huge_pte(mm, pmdp) = pgtable; in pgtable_trans_huge_deposit()
295 pgtable = pmd_huge_pte(mm, pmdp); in pgtable_trans_huge_withdraw()
[all …]
/arch/x86/include/asm/
A Dpgtable-3level.h48 static inline void native_set_pmd(pmd_t *pmdp, pmd_t pmd) in native_set_pmd() argument
50 pxx_xchg64(pmd, pmdp, native_pmd_val(pmd)); in native_set_pmd()
74 static inline void native_pmd_clear(pmd_t *pmdp) in native_pmd_clear() argument
76 WRITE_ONCE(pmdp->pmd_low, 0); in native_pmd_clear()
78 WRITE_ONCE(pmdp->pmd_high, 0); in native_pmd_clear()
110 return pxx_xchg64(pmd, pmdp, 0ULL); in native_pmdp_get_and_clear()
126 unsigned long address, pmd_t *pmdp, pmd_t pmd) in pmdp_establish() argument
137 old.pmd_low = xchg(&pmdp->pmd_low, pmd.pmd_low); in pmdp_establish()
138 old.pmd_high = READ_ONCE(pmdp->pmd_high); in pmdp_establish()
139 WRITE_ONCE(pmdp->pmd_high, pmd.pmd_high); in pmdp_establish()
[all …]
/arch/arm/include/asm/
A Dpgalloc.h107 static inline void __pmd_populate(pmd_t *pmdp, phys_addr_t pte, in __pmd_populate() argument
111 pmdp[0] = __pmd(pmdval); in __pmd_populate()
113 pmdp[1] = __pmd(pmdval + 256 * sizeof(pte_t)); in __pmd_populate()
115 flush_pmd_entry(pmdp); in __pmd_populate()
125 pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmdp, pte_t *ptep) in pmd_populate_kernel() argument
130 __pmd_populate(pmdp, __pa(ptep), _PAGE_KERNEL_TABLE); in pmd_populate_kernel()
134 pmd_populate(struct mm_struct *mm, pmd_t *pmdp, pgtable_t ptep) in pmd_populate() argument
144 __pmd_populate(pmdp, page_to_phys(ptep), prot); in pmd_populate()
/arch/s390/mm/
A Dpgtable.c391 __pmdp_csp(pmdp); in pmdp_idte_global()
402 old = *pmdp; in pmdp_flush_direct()
420 old = *pmdp; in pmdp_flush_lazy()
426 set_pmd(pmdp, set_pmd_bit(*pmdp, __pgprot(_SEGMENT_ENTRY_INVALID))); in pmdp_flush_lazy()
478 set_pmd(pmdp, new); in pmdp_xchg_direct()
491 set_pmd(pmdp, new); in pmdp_xchg_lazy()
798 pmd_t *pmdp; in set_guest_storage_key() local
820 if (pmd_leaf(*pmdp)) { in set_guest_storage_key()
908 pmd_t *pmdp; in reset_guest_reference_bit() local
931 if (pmd_leaf(*pmdp)) { in reset_guest_reference_bit()
[all …]
A Dpageattr.c95 ptep = pte_offset_kernel(pmdp, addr); in walk_pte_level()
154 pmd_t new = *pmdp; in modify_pmd_page()
178 pmd_t *pmdp; in walk_pmd_level() local
181 pmdp = pmd_offset(pudp, addr); in walk_pmd_level()
183 if (pmd_none(*pmdp)) in walk_pmd_level()
186 if (pmd_leaf(*pmdp)) { in walk_pmd_level()
191 rc = split_pmd_page(pmdp, addr); in walk_pmd_level()
202 pmdp++; in walk_pmd_level()
212 pmd_t *pm_dir, *pmdp; in split_pud_page() local
225 pmdp = pm_dir; in split_pud_page()
[all …]
A Dgmap.c366 pmd_t *pmdp; in __gmap_unlink_by_vmaddr() local
372 if (pmdp) { in __gmap_unlink_by_vmaddr()
823 pmd_t *pmdp; in gmap_pmd_op_walk() local
827 if (!pmdp) in gmap_pmd_op_walk()
832 return pmd_none(*pmdp) ? NULL : pmdp; in gmap_pmd_op_walk()
843 return pmdp; in gmap_pmd_op_walk()
958 pmd_t *pmdp; in gmap_protect_one() local
964 if (!pmdp) in gmap_protect_one()
2001 pmd_t *pmdp; in gmap_pmdp_clear() local
2009 if (pmdp) { in gmap_pmdp_clear()
[all …]
/arch/arm64/mm/
A Dmmu.c293 pmd_t *pmdp; in alloc_init_cont_pmd() local
309 pmdp += pmd_index(addr); in alloc_init_cont_pmd()
900 pmd_t *pmdp, pmd; in unmap_hotplug_pmd_range() local
911 pmd_clear(pmdp); in unmap_hotplug_pmd_range()
1038 pmd_clear(pmdp); in free_empty_pte_table()
1047 pmd_t *pmdp, pmd; in free_empty_pmd_table() local
1245 set_pmd(pmdp, new_pmd); in pmd_set_huge()
1267 pmd_clear(pmdp); in pmd_clear_huge()
1284 pmd_clear(pmdp); in pmd_free_pte_page()
1293 pmd_t *pmdp; in pud_free_pmd_page() local
[all …]
A Dfixmap.c43 static void __init early_fixmap_init_pte(pmd_t *pmdp, unsigned long addr) in early_fixmap_init_pte() argument
45 pmd_t pmd = READ_ONCE(*pmdp); in early_fixmap_init_pte()
50 __pmd_populate(pmdp, __pa_symbol(ptep), in early_fixmap_init_pte()
60 pmd_t *pmdp; in early_fixmap_init_pmd() local
66 pmdp = pmd_offset_kimg(pudp, addr); in early_fixmap_init_pmd()
69 early_fixmap_init_pte(pmdp, addr); in early_fixmap_init_pmd()
70 } while (pmdp++, addr = next, addr != end); in early_fixmap_init_pmd()
A Dhugetlbpage.c88 pmd_t *pmdp; in find_num_contig() local
93 pmdp = pmd_offset(pudp, addr); in find_num_contig()
94 if ((pte_t *)pmdp == ptep) { in find_num_contig()
246 pmd_t *pmdp; in huge_pte_alloc() local
261 pmdp = pmd_alloc(mm, pudp, addr); in huge_pte_alloc()
262 if (!pmdp) in huge_pte_alloc()
275 return (pte_t *)pmdp; in huge_pte_alloc()
287 pmd_t *pmdp, pmd; in huge_pte_offset() local
309 pmdp = pmd_offset(pudp, addr); in huge_pte_offset()
310 pmd = READ_ONCE(*pmdp); in huge_pte_offset()
[all …]
/arch/powerpc/mm/
A Dpgtable.c229 pmd_t *pmdp = pmd_off_k(va); in unmap_kernel_page() local
326 pmd_t *pmdp = pmd_off(mm, addr); in set_huge_pte_at() local
331 *pmdp = __pmd(pmd_val(*pmdp) | _PMD_PAGE_8M); in set_huge_pte_at()
332 *(pmdp + 1) = __pmd(pmd_val(*(pmdp + 1)) | _PMD_PAGE_8M); in set_huge_pte_at()
334 __set_huge_pte_at(pmdp, pte_offset_kernel(pmdp, 0), pte_val(pte)); in set_huge_pte_at()
335 __set_huge_pte_at(pmdp, pte_offset_kernel(pmdp + 1, 0), pte_val(pte) + SZ_4M); in set_huge_pte_at()
436 pmd_t pmd, *pmdp; in __find_linux_pte() local
487 pmdp = pmd_offset(&pud, ea); in __find_linux_pte()
492 pmd = READ_ONCE(*pmdp); in __find_linux_pte()
515 ret_pte = (pte_t *)pmdp; in __find_linux_pte()
[all …]
A Dpgtable_32.c42 pmd_t *pmdp = pmd_off_k(addr); in early_ioremap_init() local
45 addr += PGDIR_SIZE, ptep += PTRS_PER_PTE, pmdp++) in early_ioremap_init()
46 pmd_populate_kernel(&init_mm, pmdp, ptep); in early_ioremap_init()
57 pte_t __init *early_pte_alloc_kernel(pmd_t *pmdp, unsigned long va) in early_pte_alloc_kernel() argument
59 if (pmd_none(*pmdp)) { in early_pte_alloc_kernel()
62 pmd_populate_kernel(&init_mm, pmdp, ptep); in early_pte_alloc_kernel()
64 return pte_offset_kernel(pmdp, va); in early_pte_alloc_kernel()
/arch/powerpc/mm/kasan/
A Dinit_book3e_64.c37 pmd_t *pmdp; in kasan_map_kernel_page() local
49 pmdp = memblock_alloc_or_panic(PMD_TABLE_SIZE, PMD_TABLE_SIZE); in kasan_map_kernel_page()
50 memcpy(pmdp, kasan_early_shadow_pmd, PMD_TABLE_SIZE); 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()
54 if (kasan_pte_table(*pmdp)) { in kasan_map_kernel_page()
57 pmd_populate_kernel(&init_mm, pmdp, ptep); in kasan_map_kernel_page()
59 ptep = pte_offset_kernel(pmdp, ea); in kasan_map_kernel_page()
/arch/xtensa/include/asm/
A Dpgalloc.h24 #define pmd_populate_kernel(mm, pmdp, ptep) \ argument
25 (pmd_val(*(pmdp)) = ((unsigned long)ptep))
26 #define pmd_populate(mm, pmdp, page) \ argument
27 (pmd_val(*(pmdp)) = ((unsigned long)page_to_virt(page)))
/arch/powerpc/include/asm/book3s/64/
A Dhash-4k.h122 static inline char *get_hpte_slot_array(pmd_t *pmdp) in get_hpte_slot_array() argument
159 unsigned long addr, pmd_t *pmdp,
162 unsigned long address, pmd_t *pmdp);
163 extern void hash__pgtable_trans_huge_deposit(struct mm_struct *mm, pmd_t *pmdp,
165 extern pgtable_t hash__pgtable_trans_huge_withdraw(struct mm_struct *mm, pmd_t *pmdp);
167 unsigned long addr, pmd_t *pmdp);
A Dhash-64k.h202 static inline char *get_hpte_slot_array(pmd_t *pmdp) in get_hpte_slot_array() argument
211 return *(char **)(pmdp + PTRS_PER_PMD); in get_hpte_slot_array()
272 unsigned long addr, pmd_t *pmdp,
275 unsigned long address, pmd_t *pmdp);
276 extern void hash__pgtable_trans_huge_deposit(struct mm_struct *mm, pmd_t *pmdp,
278 extern pgtable_t hash__pgtable_trans_huge_withdraw(struct mm_struct *mm, pmd_t *pmdp);
280 unsigned long addr, pmd_t *pmdp);
/arch/powerpc/include/asm/book3s/32/
A Dpgalloc.h28 static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmdp, in pmd_populate_kernel() argument
31 *pmdp = __pmd(__pa(pte) | _PMD_PRESENT); in pmd_populate_kernel()
34 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmdp, in pmd_populate() argument
37 *pmdp = __pmd(__pa(pte_page) | _PMD_PRESENT); in pmd_populate()
/arch/arm/mm/
A Dkasan_init.c43 static void __init kasan_pte_populate(pmd_t *pmdp, unsigned long addr, in kasan_pte_populate() argument
47 pte_t *ptep = pte_offset_kernel(pmdp, addr); in kasan_pte_populate()
97 pmd_t *pmdp = pmd_offset(pudp, addr); in kasan_pmd_populate() local
100 if (pmd_none(*pmdp)) { in kasan_pmd_populate()
114 pmd_populate_kernel(&init_mm, pmdp, p); in kasan_pmd_populate()
115 flush_pmd_entry(pmdp); in kasan_pmd_populate()
119 kasan_pte_populate(pmdp, addr, next, early); in kasan_pmd_populate()
120 } while (pmdp++, addr = next, addr != end); in kasan_pmd_populate()

Completed in 78 milliseconds

1234