Home
last modified time | relevance | path

Searched refs:pmd_t (Results 1 – 25 of 255) sorted by relevance

1234567891011

/linux/arch/riscv/include/asm/
H A Dpgtable.h156 pmd_t *(*get_pmd_virt)(phys_addr_t pa);
210 static inline int pmd_present(pmd_t pmd) in pmd_present()
221 static inline int pmd_present(pmd_t pmd) in pmd_present()
227 static inline int pmd_none(pmd_t pmd) in pmd_none()
232 static inline int pmd_bad(pmd_t pmd) in pmd_bad()
238 static inline bool pmd_leaf(pmd_t pmd) in pmd_leaf()
243 static inline void set_pmd(pmd_t *pmdp, pmd_t pmd) in set_pmd()
248 static inline void pmd_clear(pmd_t *pmdp) in pmd_clear()
267 static inline struct page *pmd_page(pmd_t pmd) in pmd_page()
272 static inline unsigned long pmd_page_vaddr(pmd_t pmd) in pmd_page_vaddr()
[all …]
/linux/mm/
H A Dpgtable-generic.c52 void pmd_clear_bad(pmd_t *pmd) in pmd_clear_bad()
110 unsigned long address, pmd_t *pmdp, in pmdp_set_access_flags()
111 pmd_t entry, int dirty) in pmdp_set_access_flags()
125 unsigned long address, pmd_t *pmdp) in pmdp_clear_flush_young()
137 pmd_t pmdp_huge_clear_flush(struct vm_area_struct *vma, unsigned long address, in pmdp_huge_clear_flush()
138 pmd_t *pmdp) in pmdp_huge_clear_flush()
140 pmd_t pmd; in pmdp_huge_clear_flush()
165 void pgtable_trans_huge_deposit(struct mm_struct *mm, pmd_t *pmdp, in pgtable_trans_huge_deposit()
181 pgtable_t pgtable_trans_huge_withdraw(struct mm_struct *mm, pmd_t *pmdp) in pgtable_trans_huge_withdraw()
198 pmd_t pmdp_invalidate(struct vm_area_struct *vma, unsigned long address, in pmdp_invalidate()
[all …]
/linux/arch/powerpc/include/asm/book3s/64/
H A Dhash-4k.h37 #define H_PMD_TABLE_SIZE (sizeof(pmd_t) << H_PMD_INDEX_SIZE)
114 static inline char *get_hpte_slot_array(pmd_t *pmdp) in get_hpte_slot_array()
139 static inline int hash__pmd_trans_huge(pmd_t pmd) in hash__pmd_trans_huge()
144 static inline pmd_t hash__pmd_mkhuge(pmd_t pmd) in hash__pmd_mkhuge()
151 unsigned long addr, pmd_t *pmdp,
153 extern pmd_t hash__pmdp_collapse_flush(struct vm_area_struct *vma,
154 unsigned long address, pmd_t *pmdp);
155 extern void hash__pgtable_trans_huge_deposit(struct mm_struct *mm, pmd_t *pmdp,
157 extern pgtable_t hash__pgtable_trans_huge_withdraw(struct mm_struct *mm, pmd_t *pmdp);
158 extern pmd_t hash__pmdp_huge_get_and_clear(struct mm_struct *mm,
[all …]
H A Dhash-64k.h188 #define H_PMD_TABLE_SIZE ((sizeof(pmd_t) << PMD_INDEX_SIZE) + \
191 #define H_PMD_TABLE_SIZE (sizeof(pmd_t) << PMD_INDEX_SIZE)
202 static inline char *get_hpte_slot_array(pmd_t *pmdp) in get_hpte_slot_array()
260 static inline int hash__pmd_trans_huge(pmd_t pmd) in hash__pmd_trans_huge()
266 static inline pmd_t hash__pmd_mkhuge(pmd_t pmd) in hash__pmd_mkhuge()
272 unsigned long addr, pmd_t *pmdp,
274 extern pmd_t hash__pmdp_collapse_flush(struct vm_area_struct *vma,
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);
[all …]
H A Dradix.h137 #define RADIX_PMD_TABLE_SIZE (sizeof(pmd_t) << RADIX_PMD_INDEX_SIZE)
238 static inline int radix__pmd_bad(pmd_t pmd) in radix__pmd_bad()
243 static inline int radix__pmd_same(pmd_t pmd_a, pmd_t pmd_b) in radix__pmd_same()
265 static inline int radix__pmd_trans_huge(pmd_t pmd) in radix__pmd_trans_huge()
270 static inline pmd_t radix__pmd_mkhuge(pmd_t pmd) in radix__pmd_mkhuge()
286 pmd_t *pmdp, unsigned long clr,
291 extern pmd_t radix__pmdp_collapse_flush(struct vm_area_struct *vma,
292 unsigned long address, pmd_t *pmdp);
293 extern void radix__pgtable_trans_huge_deposit(struct mm_struct *mm, pmd_t *pmdp,
295 extern pgtable_t radix__pgtable_trans_huge_withdraw(struct mm_struct *mm, pmd_t *pmdp);
[all …]
H A Dpgtable.h267 static inline bool pmd_leaf(pmd_t pmd) in pmd_leaf()
279 static inline unsigned long pmd_leaf_size(pmd_t pmd) in pmd_leaf_size()
807 static inline void pmd_clear(pmd_t *pmdp) in pmd_clear()
819 static inline int pmd_none(pmd_t pmd) in pmd_none()
824 static inline int pmd_present(pmd_t pmd) in pmd_present()
838 static inline int pmd_is_serializing(pmd_t pmd) in pmd_is_serializing()
855 static inline int pmd_bad(pmd_t pmd) in pmd_bad()
885 extern struct page *pmd_page(pmd_t pmd);
987 static inline pmd_t *pud_pgtable(pud_t pud) in pud_pgtable()
989 return (pmd_t *)__va(pud_val(pud) & ~PUD_MASKED_BITS); in pud_pgtable()
[all …]
H A Dpgalloc.h19 extern pmd_t *pmd_fragment_alloc(struct mm_struct *, unsigned long);
131 static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) in pud_populate()
142 static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long addr) in pmd_alloc_one()
147 static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) in pmd_free()
152 static inline void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd, in __pmd_free_tlb()
158 static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, in pmd_populate_kernel()
164 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, in pmd_populate()
/linux/include/asm-generic/
H A Dpgtable_uffd.h10 static __always_inline int pmd_uffd_wp(pmd_t pmd) in pmd_uffd_wp()
20 static __always_inline pmd_t pmd_mkuffd_wp(pmd_t pmd) in pmd_mkuffd_wp()
30 static __always_inline pmd_t pmd_clear_uffd_wp(pmd_t pmd) in pmd_clear_uffd_wp()
50 static inline pmd_t pmd_swp_mkuffd_wp(pmd_t pmd) in pmd_swp_mkuffd_wp()
55 static inline int pmd_swp_uffd_wp(pmd_t pmd) in pmd_swp_uffd_wp()
60 static inline pmd_t pmd_swp_clear_uffd_wp(pmd_t pmd) in pmd_swp_clear_uffd_wp()
H A Dpgtable-nopmd.h18 typedef struct { pud_t pud; } pmd_t; typedef
44 #define set_pud(pudptr, pudval) set_pmd((pmd_t *)(pudptr), (pmd_t) { pudval })
46 static inline pmd_t * pmd_offset(pud_t * pud, unsigned long address) in pmd_offset()
48 return (pmd_t *)pud; in pmd_offset()
53 #define __pmd(x) ((pmd_t) { __pud(x) } )
55 #define pud_page(pud) (pmd_page((pmd_t){ pud }))
56 #define pud_pgtable(pud) ((pmd_t *)(pmd_page_vaddr((pmd_t){ pud })))
63 static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) in pmd_free()
/linux/arch/mips/include/asm/
H A Dpgtable.h67 static inline unsigned long pmd_pfn(pmd_t pmd) in pmd_pfn()
247 #define PMD_T_LOG2 (__builtin_ffs(sizeof(pmd_t)) - 1)
413 static inline int pmd_write(pmd_t pmd)
418 static inline struct page *pmd_page(pmd_t pmd)
601 unsigned long address, pmd_t *pmdp)
628 static inline int pmd_trans_huge(pmd_t pmd)
633 static inline pmd_t pmd_mkhuge(pmd_t pmd)
641 pmd_t *pmdp, pmd_t pmd);
643 static inline pmd_t pmd_wrprotect(pmd_t pmd)
649 static inline pmd_t pmd_mkwrite_novma(pmd_t pmd)
[all …]
/linux/include/linux/
H A Dpage_table_check.h18 void __page_table_check_pmd_clear(struct mm_struct *mm, pmd_t pmd);
22 void __page_table_check_pmd_set(struct mm_struct *mm, pmd_t *pmdp, pmd_t pmd);
26 pmd_t pmd);
52 static inline void page_table_check_pmd_clear(struct mm_struct *mm, pmd_t pmd) in page_table_check_pmd_clear()
77 static inline void page_table_check_pmd_set(struct mm_struct *mm, pmd_t *pmdp, in page_table_check_pmd_set()
78 pmd_t pmd) in page_table_check_pmd_set()
97 pmd_t pmd) in page_table_check_pte_clear_range()
119 static inline void page_table_check_pmd_clear(struct mm_struct *mm, pmd_t pmd) in page_table_check_pmd_clear()
132 static inline void page_table_check_pmd_set(struct mm_struct *mm, pmd_t *pmdp, in page_table_check_pmd_set()
133 pmd_t pmd) in page_table_check_pmd_set()
[all …]
H A Dhuge_mm.h12 pmd_t *dst_pmd, pmd_t *src_pmd, unsigned long addr,
29 pmd_t *pmd, unsigned long addr, unsigned long next);
30 int zap_huge_pmd(struct mmu_gather *tlb, struct vm_area_struct *vma, pmd_t *pmd,
35 unsigned long new_addr, pmd_t *old_pmd, pmd_t *new_pmd);
37 pmd_t *pmd, unsigned long addr, pgprot_t newprot,
361 void __split_huge_pmd(struct vm_area_struct *vma, pmd_t *pmd,
366 pmd_t *____pmd = (__pmd); \
406 spinlock_t *__pmd_trans_huge_lock(pmd_t *pmd, struct vm_area_struct *vma);
409 static inline int is_swap_pmd(pmd_t pmd) in is_swap_pmd()
415 static inline spinlock_t *pmd_trans_huge_lock(pmd_t *pmd, in pmd_trans_huge_lock()
[all …]
/linux/arch/x86/mm/
H A Dpgtable.c61 void ___pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd) in ___pmd_free_tlb()
191 void pud_populate(struct mm_struct *mm, pud_t *pudp, pmd_t *pmd) in pud_populate()
216 static void free_pmds(struct mm_struct *mm, pmd_t *pmds[], int count) in free_pmds()
231 static int preallocate_pmds(struct mm_struct *mm, pmd_t *pmds[], int count) in preallocate_pmds()
242 pmd_t *pmd = NULL; in preallocate_pmds()
279 pmd_t *pmd = (pmd_t *)pgd_page_vaddr(pgd); in mop_up_one_pmd()
308 static void pgd_prepopulate_pmd(struct mm_struct *mm, pgd_t *pgd, pmd_t *pmds[]) in pgd_prepopulate_pmd()
318 pmd_t *pmd = pmds[i]; in pgd_prepopulate_pmd()
321 memcpy(pmd, (pmd_t *)pgd_page_vaddr(swapper_pg_dir[i]), in pgd_prepopulate_pmd()
322 sizeof(pmd_t) * PTRS_PER_PMD); in pgd_prepopulate_pmd()
[all …]
/linux/arch/sparc/include/asm/
H A Dpgtable_64.h231 static inline pmd_t pfn_pmd(unsigned long page_nr, pgprot_t pgprot) in pfn_pmd()
321 static inline pmd_t pmd_modify(pmd_t pmd, pgprot_t newprot) in pmd_modify()
430 static inline bool is_hugetlb_pmd(pmd_t pmd) in is_hugetlb_pmd()
441 static inline pmd_t pmd_mkhuge(pmd_t pmd) in pmd_mkhuge()
684 static inline bool pmd_leaf(pmd_t pmd) in pmd_leaf()
691 static inline unsigned long pmd_pfn(pmd_t pmd) in pmd_pfn()
699 static inline unsigned long pmd_write(pmd_t pmd) in pmd_write()
710 static inline unsigned long pmd_dirty(pmd_t pmd) in pmd_dirty()
718 static inline unsigned long pmd_young(pmd_t pmd) in pmd_young()
725 static inline unsigned long pmd_trans_huge(pmd_t pmd) in pmd_trans_huge()
[all …]
/linux/arch/powerpc/include/asm/
H A Dpgtable-be-types.h23 typedef struct { __be64 pmd; } pmd_t; typedef
24 #define __pmd(x) ((pmd_t) { cpu_to_be64(x) })
25 #define __pmd_raw(x) ((pmd_t) { (x) })
26 static inline unsigned long pmd_val(pmd_t x) in pmd_val()
31 static inline __be64 pmd_raw(pmd_t x) in pmd_raw()
93 static inline bool pmd_xchg(pmd_t *pmdp, pmd_t old, pmd_t new) in pmd_xchg()
/linux/arch/riscv/mm/
H A Dpgtable.c90 pmd_t *pmd = pud_pgtable(pudp_get(pud)); in pud_free_pmd_page()
110 int pmd_set_huge(pmd_t *pmd, phys_addr_t phys, pgprot_t prot) in pmd_set_huge()
112 pmd_t new_pmd = pfn_pmd(__phys_to_pfn(phys), prot); in pmd_set_huge()
118 int pmd_clear_huge(pmd_t *pmd) in pmd_clear_huge()
126 int pmd_free_pte_page(pmd_t *pmd, unsigned long addr) in pmd_free_pte_page()
139 pmd_t pmdp_collapse_flush(struct vm_area_struct *vma, in pmdp_collapse_flush()
140 unsigned long address, pmd_t *pmdp) in pmdp_collapse_flush()
142 pmd_t pmd = pmdp_huge_get_and_clear(vma->vm_mm, address, pmdp); in pmdp_collapse_flush()
/linux/arch/arc/include/asm/
H A Dhugepage.h20 static inline pte_t pmd_pte(pmd_t pmd) in pmd_pte()
25 static inline pmd_t pte_pmd(pte_t pte) in pte_pmd()
49 static inline pmd_t pmd_modify(pmd_t pmd, pgprot_t newprot) in pmd_modify()
59 pmd_t *pmdp, pmd_t pmd) in set_pmd_at()
65 pmd_t *pmd);
/linux/arch/alpha/include/asm/
H A Dpgtable.h136 extern pmd_t * __bad_pagetable(void);
209 extern inline void pmd_set(pmd_t * pmdp, pte_t * ptep) in pmd_set()
212 extern inline void pud_set(pud_t * pudp, pmd_t * pmdp) in pud_set()
217 pmd_page_vaddr(pmd_t pmd) in pmd_page_vaddr()
226 extern inline pmd_t *pud_pgtable(pud_t pgd) in pud_pgtable()
228 return (pmd_t *)(PAGE_OFFSET + ((pud_val(pgd) & _PFN_MASK) >> (32-PAGE_SHIFT))); in pud_pgtable()
238 extern inline int pmd_none(pmd_t pmd) { return !pmd_val(pmd); } in pmd_none()
239 extern inline int pmd_bad(pmd_t pmd) { return (pmd_val(pmd) & ~_PFN_MASK) != _PAGE_TABLE; } in pmd_bad()
240 extern inline int pmd_present(pmd_t pmd) { return pmd_val(pmd) & _PAGE_VALID; } in pmd_present()
241 extern inline void pmd_clear(pmd_t * pmdp) { pmd_val(*pmdp) = 0; } in pmd_clear()
[all …]
/linux/arch/parisc/include/asm/
H A Dpgalloc.h41 static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) in pud_populate()
47 static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) in pmd_alloc_one()
49 pmd_t *pmd; in pmd_alloc_one()
51 pmd = (pmd_t *)__get_free_pages(GFP_PGTABLE_KERNEL, PMD_TABLE_ORDER); in pmd_alloc_one()
57 static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) in pmd_free()
64 pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, pte_t *pte) in pmd_populate_kernel()
/linux/arch/x86/include/asm/
H A Dpgtable-3level.h48 static inline void native_set_pmd(pmd_t *pmdp, pmd_t pmd) in native_set_pmd()
74 static inline void native_pmd_clear(pmd_t *pmdp) in native_pmd_clear()
108 static inline pmd_t native_pmdp_get_and_clear(pmd_t *pmdp) in native_pmdp_get_and_clear()
125 static inline pmd_t pmdp_establish(struct vm_area_struct *vma, in pmdp_establish()
126 unsigned long address, pmd_t *pmdp, pmd_t pmd) in pmdp_establish()
128 pmd_t old; in pmdp_establish()
H A Dpgtable_64.h23 extern pmd_t level2_kernel_pgt[512];
24 extern pmd_t level2_fixmap_pgt[512];
25 extern pmd_t level2_ident_pgt[512];
81 static inline void native_set_pmd(pmd_t *pmdp, pmd_t pmd) in native_set_pmd()
86 static inline void native_pmd_clear(pmd_t *pmd) in native_pmd_clear()
104 static inline pmd_t native_pmdp_get_and_clear(pmd_t *xp) in native_pmdp_get_and_clear()
111 pmd_t ret = *xp; in native_pmdp_get_and_clear()
H A Dpgalloc.h65 pmd_t *pmd, pte_t *pte) in pmd_populate_kernel()
72 pmd_t *pmd, pte_t *pte) in pmd_populate_kernel_safe()
78 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, in pmd_populate()
88 extern void ___pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd);
90 static inline void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd, in __pmd_free_tlb()
97 extern void pud_populate(struct mm_struct *mm, pud_t *pudp, pmd_t *pmd);
99 static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) in pud_populate()
105 static inline void pud_populate_safe(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) in pud_populate_safe()
/linux/arch/m68k/include/asm/
H A Dmotorola_pgalloc.h54 static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) in pmd_alloc_one()
59 static inline int pmd_free(struct mm_struct *mm, pmd_t *pmd) in pmd_free()
64 static inline int __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd, in __pmd_free_tlb()
82 static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, pte_t *pte) in pmd_populate_kernel()
87 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, pgtable_t page) in pmd_populate()
92 static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) in pud_populate()
/linux/arch/sh/include/asm/
H A Dpgalloc.h17 extern void pud_populate(struct mm_struct *mm, pud_t *pudp, pmd_t *pmd);
18 extern pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address);
19 extern void pmd_free(struct mm_struct *mm, pmd_t *pmd);
23 static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, in pmd_populate_kernel()
29 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, in pmd_populate()
/linux/mm/kasan/
H A Dinit.c56 pmd_t kasan_early_shadow_pmd[MAX_PTRS_PER_PMD] __page_aligned_bss;
70 static inline bool kasan_pte_table(pmd_t pmd) in kasan_pte_table()
92 static void __ref zero_pte_populate(pmd_t *pmd, unsigned long addr, in zero_pte_populate()
112 pmd_t *pmd = pmd_offset(pud, addr);
153 pmd_t *pmd; in zero_pud_populate()
164 pmd_t *p; in zero_pud_populate()
192 pmd_t *pmd; in pud_init()
244 pmd_t *pmd; in kasan_populate_early_shadow()
286 static void kasan_free_pte(pte_t *pte_start, pmd_t *pmd) in kasan_populate_early_shadow()
301 static void kasan_free_pmd(pmd_t *pmd_star in kasan_free_pte()
[all...]

1234567891011