| /linux/arch/riscv/include/asm/ |
| H A D | pgtable.h | 156 pmd_t *(*get_pmd_virt)(phys_addr_t pa); 212 static inline int pmd_present(pmd_t pmd) in pmd_present() 223 static inline int pmd_present(pmd_t pmd) in pmd_present() 229 static inline int pmd_none(pmd_t pmd) in pmd_none() 234 static inline int pmd_bad(pmd_t pmd) in pmd_bad() 240 static inline bool pmd_leaf(pmd_t pmd) in pmd_leaf() 245 static inline void set_pmd(pmd_t *pmdp, pmd_t pmd) in set_pmd() 250 static inline void pmd_clear(pmd_t *pmdp) in pmd_clear() 269 static inline struct page *pmd_page(pmd_t pmd) in pmd_page() 274 static inline unsigned long pmd_page_vaddr(pmd_t pmd) in pmd_page_vaddr() [all …]
|
| /linux/arch/x86/include/asm/ |
| H A D | pgtable.h | 124 static inline pmd_t pmd_set_flags(pmd_t pmd, pmdval_t set) in pmd_set_flags() 131 static inline pmd_t pmd_clear_flags(pmd_t pmd, pmdval_t clear) in pmd_clear_flags() 178 static inline bool pmd_dirty(pmd_t pmd) in pmd_dirty() 183 static inline bool pmd_shstk(pmd_t pmd) in pmd_shstk() 191 static inline int pmd_young(pmd_t pmd) in pmd_young() 223 static inline int pmd_write(pmd_t pmd) in pmd_write() 271 static inline unsigned long pmd_pfn(pmd_t pmd) in pmd_pfn() 299 static inline bool pmd_leaf(pmd_t pte) in pmd_leaf() 305 static inline int pmd_trans_huge(pmd_t pmd) in pmd_trans_huge() 324 static inline bool pmd_special(pmd_t pmd) in pmd_special() [all …]
|
| H A D | pgtable-3level.h | 48 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()
|
| /linux/arch/loongarch/include/asm/ |
| H A D | pgtable.h | 190 typedef struct { unsigned long pmd; } pmd_t; typedef 192 #define __pmd(x) ((pmd_t) { (x) }) 194 extern pmd_t invalid_pmd_table[PTRS_PER_PMD]; 214 static inline pmd_t *pud_pgtable(pud_t pud) in pud_pgtable() 216 return (pmd_t *)pud_val(pud); in pud_pgtable() 237 static inline int pmd_none(pmd_t pmd) in pmd_none() 242 static inline int pmd_bad(pmd_t pmd) in pmd_bad() 247 static inline int pmd_present(pmd_t pmd) in pmd_present() 255 static inline void set_pmd(pmd_t *pmd, pmd_t pmdval) in set_pmd() 260 static inline void pmd_clear(pmd_t *pmdp) in pmd_clear() [all …]
|
| /linux/include/linux/ |
| H A D | pgtable.h | 96 static inline pte_t *pte_offset_kernel(pmd_t *pmd, unsigned long address) in pte_offset_kernel() 111 static inline pte_t *__pte_map(pmd_t *pmd, unsigned long address) in __pte_map() 125 static inline pmd_t *pmd_offset(pud_t *pud, unsigned long address) in pmd_offset() 165 static inline pmd_t *pmd_off(struct mm_struct *mm, unsigned long va) in pmd_off() 170 static inline pmd_t *pmd_off_k(unsigned long va) in pmd_off_k() 177 pmd_t *pmd = pmd_off_k(vaddr); in virt_to_kpte() 183 static inline int pmd_young(pmd_t pmd) in pmd_young() 190 static inline int pmd_dirty(pmd_t pmd) in pmd_dirty() 435 unsigned long address, pmd_t *pmdp, 436 pmd_t entry, int dirty); [all …]
|
| H A D | page_table_check.h | 20 pmd_t pmd); 26 pmd_t *pmdp, pmd_t pmd, unsigned int nr); 31 pmd_t pmd); 59 unsigned long addr, pmd_t pmd) in page_table_check_pmd_clear() 87 unsigned long addr, pmd_t *pmdp, pmd_t pmd, unsigned int nr) in page_table_check_pmds_set() 106 pmd_t pmd) in page_table_check_pte_clear_range() 130 unsigned long addr, pmd_t pmd) in page_table_check_pmd_clear() 146 unsigned long addr, pmd_t *pmdp, pmd_t pmd, unsigned int nr) in page_table_check_pmds_set() 157 pmd_t pmd) in page_table_check_pte_clear_range()
|
| H A D | huge_mm.h | 12 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, 422 void __split_huge_pmd(struct vm_area_struct *vma, pmd_t *pmd, 436 static inline bool pmd_is_huge(pmd_t pmd) in pmd_is_huge() 453 pmd_t *____pmd = (__pmd); \ 489 spinlock_t *__pmd_trans_huge_lock(pmd_t *pmd, struct vm_area_struct *vma); 493 static inline spinlock_t *pmd_trans_huge_lock(pmd_t *pmd, in pmd_trans_huge_lock() [all …]
|
| /linux/mm/ |
| H A D | pgtable-generic.c | 54 void pmd_clear_bad(pmd_t *pmd) in pmd_clear_bad() 112 unsigned long address, pmd_t *pmdp, in pmdp_set_access_flags() 113 pmd_t entry, int dirty) in pmdp_set_access_flags() 127 unsigned long address, pmd_t *pmdp) in pmdp_clear_flush_young() 139 pmd_t pmdp_huge_clear_flush(struct vm_area_struct *vma, unsigned long address, in pmdp_huge_clear_flush() 140 pmd_t *pmdp) in pmdp_huge_clear_flush() 142 pmd_t pmd; in pmdp_huge_clear_flush() 166 void pgtable_trans_huge_deposit(struct mm_struct *mm, pmd_t *pmdp, in pgtable_trans_huge_deposit() 182 pgtable_t pgtable_trans_huge_withdraw(struct mm_struct *mm, pmd_t *pmdp) in pgtable_trans_huge_withdraw() 199 pmd_t pmdp_invalidat [all...] |
| /linux/arch/s390/include/asm/ |
| H A D | pgtable.h | 566 static inline pmd_t clear_pmd_bit(pmd_t pmd, pgprot_t prot) in clear_pmd_bit() 571 static inline pmd_t set_pmd_bit(pmd_t pmd, pgprot_t prot) in set_pmd_bit() 744 static inline int pmd_present(pmd_t pmd) in pmd_present() 750 static inline bool pmd_leaf(pmd_t pmd) in pmd_leaf() 755 static inline int pmd_bad(pmd_t pmd) in pmd_bad() 784 static inline int pmd_none(pmd_t pmd) in pmd_none() 790 static inline int pmd_write(pmd_t pmd) in pmd_write() 802 static inline int pmd_dirty(pmd_t pmd) in pmd_dirty() 808 static inline int pmd_young(pmd_t pmd) in pmd_young() 849 static inline int pmd_protnone(pmd_t pmd) in pmd_protnone() [all …]
|
| /linux/include/asm-generic/ |
| H A D | pgtable_uffd.h | 27 static __always_inline int pmd_uffd_wp(pmd_t pmd) in pmd_uffd_wp() 37 static __always_inline pmd_t pmd_mkuffd_wp(pmd_t pmd) in pmd_mkuffd_wp() 47 static __always_inline pmd_t pmd_clear_uffd_wp(pmd_t pmd) in pmd_clear_uffd_wp() 67 static inline pmd_t pmd_swp_mkuffd_wp(pmd_t pmd) in pmd_swp_mkuffd_wp() 72 static inline int pmd_swp_uffd_wp(pmd_t pmd) in pmd_swp_uffd_wp() 77 static inline pmd_t pmd_swp_clear_uffd_wp(pmd_t pmd) in pmd_swp_clear_uffd_wp()
|
| H A D | pgtable-nopmd.h | 18 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/x86/mm/ |
| H A D | pgtable.c | 28 void ___pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd) in ___pmd_free_tlb() 137 void pud_populate(struct mm_struct *mm, pud_t *pudp, pmd_t *pmd) in pud_populate() 161 static void free_pmds(struct mm_struct *mm, pmd_t *pmds[], int count) in free_pmds() 176 static int preallocate_pmds(struct mm_struct *mm, pmd_t *pmds[], int count) in preallocate_pmds() 187 pmd_t *pmd = NULL; in preallocate_pmds() 224 pmd_t *pmd = (pmd_t *)pgd_page_vaddr(pgd); in mop_up_one_pmd() 253 static void pgd_prepopulate_pmd(struct mm_struct *mm, pgd_t *pgd, pmd_t *pmds[]) in pgd_prepopulate_pmd() 263 pmd_t *pmd = pmds[i]; in pgd_prepopulate_pmd() 266 memcpy(pmd, (pmd_t *)pgd_page_vaddr(swapper_pg_dir[i]), in pgd_prepopulate_pmd() 267 sizeof(pmd_t) * PTRS_PER_PMD); in pgd_prepopulate_pmd() [all …]
|
| /linux/arch/mips/include/asm/ |
| H A D | pgtable.h | 67 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) 595 unsigned long address, pmd_t *pmdp) 621 static inline int pmd_trans_huge(pmd_t pmd) 626 static inline pmd_t pmd_mkhuge(pmd_t pmd) 634 pmd_t *pmdp, pmd_t pmd); 636 static inline pmd_t pmd_wrprotect(pmd_t pmd) 642 static inline pmd_t pmd_mkwrite_novma(pmd_t pmd) [all …]
|
| H A D | pgtable-64.h | 130 #define PTRS_PER_PMD ((PAGE_SIZE << PMD_TABLE_ORDER) / sizeof(pmd_t)) 229 typedef struct { unsigned long pmd; } pmd_t; typedef 231 #define __pmd(x) ((pmd_t) { (x) } ) 234 extern pmd_t invalid_pmd_table[PTRS_PER_PMD]; 240 static inline int pmd_none(pmd_t pmd) in pmd_none() 245 static inline int pmd_bad(pmd_t pmd) in pmd_bad() 259 static inline int pmd_present(pmd_t pmd) in pmd_present() 269 static inline void pmd_clear(pmd_t *pmdp) in pmd_clear() 306 static inline pmd_t *pud_pgtable(pud_t pud) in pud_pgtable() 308 return (pmd_t *)pud_val(pud); in pud_pgtable()
|
| /linux/arch/powerpc/include/asm/book3s/64/ |
| H A D | hash-4k.h | 37 #define H_PMD_TABLE_SIZE (sizeof(pmd_t) << H_PMD_INDEX_SIZE) 122 static inline char *get_hpte_slot_array(pmd_t *pmdp) in get_hpte_slot_array() 147 static inline int hash__pmd_trans_huge(pmd_t pmd) in hash__pmd_trans_huge() 152 static inline pmd_t hash__pmd_mkhuge(pmd_t pmd) in hash__pmd_mkhuge() 159 unsigned long addr, pmd_t *pmdp, 161 extern pmd_t hash__pmdp_collapse_flush(struct vm_area_struct *vma, 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); 166 extern pmd_t hash__pmdp_huge_get_and_clear(struct mm_struct *mm, [all …]
|
| H A D | hash-64k.h | 188 #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 D | radix.h | 137 #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 D | pgtable.h | 268 static inline bool pmd_leaf(pmd_t pmd) in pmd_leaf() 280 static inline unsigned long pmd_leaf_size(pmd_t pmd) in pmd_leaf_size() 803 static inline void pmd_clear(pmd_t *pmdp) in pmd_clear() 815 static inline int pmd_none(pmd_t pmd) in pmd_none() 820 static inline int pmd_present(pmd_t pmd) in pmd_present() 834 static inline int pmd_is_serializing(pmd_t pmd) in pmd_is_serializing() 851 static inline int pmd_bad(pmd_t pmd) in pmd_bad() 881 extern struct page *pmd_page(pmd_t pmd); 989 static inline pmd_t *pud_pgtable(pud_t pud) in pud_pgtable() 991 return (pmd_t *)__va(pud_val(pud) & ~PUD_MASKED_BITS); in pud_pgtable() [all …]
|
| /linux/arch/sparc/include/asm/ |
| H A D | pgtable_64.h | 230 static inline pmd_t pfn_pmd(unsigned long page_nr, pgprot_t pgprot) in pfn_pmd() 319 static inline pmd_t pmd_modify(pmd_t pmd, pgprot_t newprot) in pmd_modify() 428 static inline bool is_hugetlb_pmd(pmd_t pmd) in is_hugetlb_pmd() 439 static inline pmd_t pmd_mkhuge(pmd_t pmd) in pmd_mkhuge() 682 static inline bool pmd_leaf(pmd_t pmd) in pmd_leaf() 689 static inline unsigned long pmd_pfn(pmd_t pmd) in pmd_pfn() 697 static inline unsigned long pmd_write(pmd_t pmd) in pmd_write() 708 static inline unsigned long pmd_dirty(pmd_t pmd) in pmd_dirty() 716 static inline unsigned long pmd_young(pmd_t pmd) in pmd_young() 723 static inline unsigned long pmd_trans_huge(pmd_t pmd) in pmd_trans_huge() [all …]
|
| /linux/arch/sparc/mm/ |
| H A D | tlb.c | 157 pmd_t pmd) in tlb_batch_pmd_scan() 180 pmd_t orig, pmd_t pmd) in __set_pmd_acct() 232 pmd_t *pmdp, pmd_t pmd) in set_pmd_at() 234 pmd_t orig = *pmdp; in set_pmd_at() 240 static inline pmd_t pmdp_establish(struct vm_area_struct *vma, in pmdp_establish() 241 unsigned long address, pmd_t *pmdp, pmd_t pmd) in pmdp_establish() 243 pmd_t old; in pmdp_establish() 256 pmd_t pmdp_invalidate(struct vm_area_struct *vma, unsigned long address, in pmdp_invalidate() 257 pmd_t *pmdp) in pmdp_invalidate() 259 pmd_t old, entry; in pmdp_invalidate() [all …]
|
| /linux/arch/powerpc/mm/book3s64/ |
| H A D | pgtable.c | 62 pmd_t *pmdp, pmd_t entry, int dirty) in pmdp_set_access_flags() 102 unsigned long address, pmd_t *pmdp) in pmdp_test_and_clear_young() 118 pmd_t *pmdp, pmd_t pmd) in set_pmd_at() 182 pmd_t pmdp_invalidate(struct vm_area_struct *vma, unsigned long address, in pmdp_invalidate() 183 pmd_t *pmdp) in pmdp_invalidate() 185 pmd_t old_pmd; in pmdp_invalidate() 208 pmd_t pmdp_huge_get_and_clear_full(struct vm_area_struct *vma, in pmdp_huge_get_and_clear_full() 209 unsigned long addr, pmd_t *pmdp, int full) in pmdp_huge_get_and_clear_full() 211 pmd_t pmd; in pmdp_huge_get_and_clear_full() 244 static pmd_t pmd_set_protbits(pmd_t pmd, pgprot_t pgprot) in pmd_set_protbits() [all …]
|
| /linux/arch/s390/mm/ |
| H A D | pgtable.c | 182 unsigned long addr, pmd_t *pmdp) in pmdp_idte_local() 191 unsigned long addr, pmd_t *pmdp) in pmdp_idte_global() 201 static inline pmd_t pmdp_flush_direct(struct mm_struct *mm, in pmdp_flush_direct() 202 unsigned long addr, pmd_t *pmdp) in pmdp_flush_direct() 204 pmd_t old; in pmdp_flush_direct() 219 static inline pmd_t pmdp_flush_lazy(struct mm_struct *mm, in pmdp_flush_lazy() 220 unsigned long addr, pmd_t *pmdp) in pmdp_flush_lazy() 222 pmd_t old; in pmdp_flush_lazy() 239 pmd_t pmdp_xchg_direct(struct mm_struct *mm, unsigned long addr, in pmdp_xchg_direct() 240 pmd_t *pmdp, pmd_t new) in pmdp_xchg_direct() [all …]
|
| /linux/arch/powerpc/include/asm/ |
| H A D | pgtable-be-types.h | 23 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 D | pgtable.c | 90 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() 177 pmd_t pmd_mkwrite(pmd_t pmd, struct vm_area_struct *vma) in pmd_mkwrite()
|
| /linux/arch/arc/include/asm/ |
| H A D | hugepage.h | 20 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() 47 static inline pmd_t pmd_modify(pmd_t pmd, pgprot_t newprot) in pmd_modify() 57 pmd_t *pmdp, pmd_t pmd) in set_pmd_at() 63 pmd_t *pmd);
|