/openbmc/linux/include/linux/ |
H A D | pgtable.h | 92 static inline pte_t *pte_offset_kernel(pmd_t *pmd, unsigned long address) in pte_offset_kernel() 107 static inline pte_t *__pte_map(pmd_t *pmd, unsigned long address) in __pte_map() 121 static inline pmd_t *pmd_offset(pud_t *pud, unsigned long address) in pmd_offset() 163 static inline pmd_t *pmd_off(struct mm_struct *mm, unsigned long va) in pmd_off() 168 static inline pmd_t *pmd_off_k(unsigned long va) in pmd_off_k() 175 pmd_t *pmd = pmd_off_k(vaddr); in virt_to_kpte() 181 static inline int pmd_young(pmd_t pmd) in pmd_young() 258 unsigned long address, pmd_t *pmdp, 259 pmd_t entry, int dirty); 265 unsigned long address, pmd_t *pmdp, in pmdp_set_access_flags() [all …]
|
H A D | page_table_check.h | 18 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 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, 170 void __split_huge_pmd(struct vm_area_struct *vma, pmd_t *pmd, 175 pmd_t *____pmd = (__pmd); \ 204 spinlock_t *__pmd_trans_huge_lock(pmd_t *pmd, struct vm_area_struct *vma); 207 static inline int is_swap_pmd(pmd_t pmd) in is_swap_pmd() 213 static inline spinlock_t *pmd_trans_huge_lock(pmd_t *pmd, in pmd_trans_huge_lock() [all …]
|
/openbmc/linux/arch/x86/include/asm/ |
H A D | pgtable.h | 144 static inline bool pmd_dirty(pmd_t pmd) in pmd_dirty() 149 static inline bool pmd_shstk(pmd_t pmd) in pmd_shstk() 157 static inline int pmd_young(pmd_t pmd) in pmd_young() 182 static inline int pmd_write(pmd_t pmd) in pmd_write() 230 static inline unsigned long pmd_pfn(pmd_t pmd) in pmd_pfn() 264 static inline int pmd_large(pmd_t pte) in pmd_large() 271 static inline int pmd_trans_huge(pmd_t pmd) in pmd_trans_huge() 290 static inline int pmd_devmap(pmd_t pmd) in pmd_devmap() 477 static inline pmd_t pmd_set_flags(pmd_t pmd, pmdval_t set) in pmd_set_flags() 484 static inline pmd_t pmd_clear_flags(pmd_t pmd, pmdval_t clear) in pmd_clear_flags() [all …]
|
/openbmc/linux/arch/riscv/include/asm/ |
H A D | pgtable.h | 162 pmd_t *(*get_pmd_virt)(phys_addr_t pa); 216 static inline int pmd_present(pmd_t pmd) in pmd_present() 227 static inline int pmd_present(pmd_t pmd) in pmd_present() 233 static inline int pmd_none(pmd_t pmd) in pmd_none() 238 static inline int pmd_bad(pmd_t pmd) in pmd_bad() 244 static inline int pmd_leaf(pmd_t pmd) in pmd_leaf() 249 static inline void set_pmd(pmd_t *pmdp, pmd_t pmd) in set_pmd() 254 static inline void pmd_clear(pmd_t *pmdp) in pmd_clear() 273 static inline struct page *pmd_page(pmd_t pmd) in pmd_page() 278 static inline unsigned long pmd_page_vaddr(pmd_t pmd) in pmd_page_vaddr() [all …]
|
/openbmc/linux/arch/loongarch/include/asm/ |
H A D | pgtable.h | 172 typedef struct { unsigned long pmd; } pmd_t; typedef 174 #define __pmd(x) ((pmd_t) { (x) }) 176 extern pmd_t invalid_pmd_table[PTRS_PER_PMD]; 201 static inline pmd_t *pud_pgtable(pud_t pud) in pud_pgtable() 203 return (pmd_t *)pud_val(pud); in pud_pgtable() 216 static inline int pmd_none(pmd_t pmd) in pmd_none() 221 static inline int pmd_bad(pmd_t pmd) in pmd_bad() 226 static inline int pmd_present(pmd_t pmd) in pmd_present() 234 static inline void pmd_clear(pmd_t *pmdp) in pmd_clear() 249 extern pmd_t mk_pmd(struct page *page, pgprot_t prot); [all …]
|
/openbmc/linux/mm/ |
H A D | pgtable-generic.c | 52 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 …]
|
/openbmc/linux/include/asm-generic/ |
H A D | pgtable_uffd.h | 10 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 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()
|
/openbmc/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) 137 static inline char *get_hpte_slot_array(pmd_t *pmdp) in get_hpte_slot_array() 162 static inline int hash__pmd_trans_huge(pmd_t pmd) in hash__pmd_trans_huge() 167 static inline pmd_t hash__pmd_mkhuge(pmd_t pmd) in hash__pmd_mkhuge() 174 unsigned long addr, pmd_t *pmdp, 176 extern pmd_t hash__pmdp_collapse_flush(struct vm_area_struct *vma, 177 unsigned long address, pmd_t *pmdp); 178 extern void hash__pgtable_trans_huge_deposit(struct mm_struct *mm, pmd_t *pmdp, 180 extern pgtable_t hash__pgtable_trans_huge_withdraw(struct mm_struct *mm, pmd_t *pmdp); 181 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 | 806 static inline void pmd_clear(pmd_t *pmdp) in pmd_clear() 818 static inline int pmd_none(pmd_t pmd) in pmd_none() 823 static inline int pmd_present(pmd_t pmd) in pmd_present() 837 static inline int pmd_is_serializing(pmd_t pmd) in pmd_is_serializing() 854 static inline int pmd_bad(pmd_t pmd) in pmd_bad() 884 extern struct page *pmd_page(pmd_t pmd); 986 static inline pmd_t *pud_pgtable(pud_t pud) in pud_pgtable() 988 return (pmd_t *)__va(pud_val(pud) & ~PUD_MASKED_BITS); in pud_pgtable() 1043 static inline pte_t pmd_pte(pmd_t pmd) in pmd_pte() 1048 static inline pmd_t pte_pmd(pte_t pte) in pte_pmd() [all …]
|
/openbmc/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) 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 …]
|
/openbmc/linux/arch/s390/include/asm/ |
H A D | pgtable.h | 547 static inline pmd_t clear_pmd_bit(pmd_t pmd, pgprot_t prot) in clear_pmd_bit() 552 static inline pmd_t set_pmd_bit(pmd_t pmd, pgprot_t prot) in set_pmd_bit() 726 static inline int pmd_large(pmd_t pmd) in pmd_large() 731 static inline int pmd_bad(pmd_t pmd) in pmd_bad() 760 static inline int pmd_present(pmd_t pmd) in pmd_present() 765 static inline int pmd_none(pmd_t pmd) in pmd_none() 771 static inline int pmd_write(pmd_t pmd) in pmd_write() 782 static inline int pmd_dirty(pmd_t pmd) in pmd_dirty() 788 static inline int pmd_young(pmd_t pmd) in pmd_young() 829 static inline int pmd_protnone(pmd_t pmd) in pmd_protnone() [all …]
|
/openbmc/linux/arch/x86/mm/ |
H A D | pgtable.c | 61 void ___pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd) in ___pmd_free_tlb() 188 void pud_populate(struct mm_struct *mm, pud_t *pudp, pmd_t *pmd) in pud_populate() 213 static void free_pmds(struct mm_struct *mm, pmd_t *pmds[], int count) in free_pmds() 228 static int preallocate_pmds(struct mm_struct *mm, pmd_t *pmds[], int count) in preallocate_pmds() 239 pmd_t *pmd = NULL; in preallocate_pmds() 276 pmd_t *pmd = (pmd_t *)pgd_page_vaddr(pgd); in mop_up_one_pmd() 305 static void pgd_prepopulate_pmd(struct mm_struct *mm, pgd_t *pgd, pmd_t *pmds[]) in pgd_prepopulate_pmd() 315 pmd_t *pmd = pmds[i]; in pgd_prepopulate_pmd() 318 memcpy(pmd, (pmd_t *)pgd_page_vaddr(swapper_pg_dir[i]), in pgd_prepopulate_pmd() 319 sizeof(pmd_t) * PTRS_PER_PMD); in pgd_prepopulate_pmd() [all …]
|
/openbmc/linux/arch/sparc/include/asm/ |
H A D | pgtable_64.h | 231 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 unsigned long pmd_large(pmd_t pmd) in pmd_large() 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() 709 static inline unsigned long pmd_dirty(pmd_t pmd) in pmd_dirty() 717 static inline unsigned long pmd_young(pmd_t pmd) in pmd_young() 724 static inline unsigned long pmd_trans_huge(pmd_t pmd) in pmd_trans_huge() [all …]
|
/openbmc/linux/arch/sparc/mm/ |
H A D | tlb.c | 148 pmd_t pmd) in tlb_batch_pmd_scan() 171 pmd_t orig, pmd_t pmd) in __set_pmd_acct() 223 pmd_t *pmdp, pmd_t pmd) in set_pmd_at() 225 pmd_t orig = *pmdp; in set_pmd_at() 231 static inline pmd_t pmdp_establish(struct vm_area_struct *vma, in pmdp_establish() 232 unsigned long address, pmd_t *pmdp, pmd_t pmd) in pmdp_establish() 234 pmd_t old; in pmdp_establish() 247 pmd_t pmdp_invalidate(struct vm_area_struct *vma, unsigned long address, in pmdp_invalidate() 248 pmd_t *pmdp) in pmdp_invalidate() 250 pmd_t old, entry; in pmdp_invalidate() [all …]
|
/openbmc/linux/arch/powerpc/mm/book3s64/ |
H A D | pgtable.c | 49 pmd_t *pmdp, pmd_t entry, int dirty) in pmdp_set_access_flags() 90 unsigned long address, pmd_t *pmdp) in pmdp_test_and_clear_young() 106 pmd_t *pmdp, pmd_t pmd) in set_pmd_at() 168 pmd_t pmdp_invalidate(struct vm_area_struct *vma, unsigned long address, in pmdp_invalidate() 169 pmd_t *pmdp) in pmdp_invalidate() 179 pmd_t pmdp_huge_get_and_clear_full(struct vm_area_struct *vma, in pmdp_huge_get_and_clear_full() 180 unsigned long addr, pmd_t *pmdp, int full) in pmdp_huge_get_and_clear_full() 182 pmd_t pmd; in pmdp_huge_get_and_clear_full() 216 static pmd_t pmd_set_protbits(pmd_t pmd, pgprot_t pgprot) in pmd_set_protbits() 231 pmd_t pfn_pmd(unsigned long pfn, pgprot_t pgprot) in pfn_pmd() [all …]
|
/openbmc/linux/arch/arm64/include/asm/ |
H A D | pgtable.h | 172 static inline pmd_t clear_pmd_bit(pmd_t pmd, pgprot_t prot) in clear_pmd_bit() 178 static inline pmd_t set_pmd_bit(pmd_t pmd, pgprot_t prot) in set_pmd_bit() 254 static inline pmd_t pmd_mkcont(pmd_t pmd) in pmd_mkcont() 399 static inline pmd_t pud_pmd(pud_t pud) in pud_pmd() 404 static inline pte_t pmd_pte(pmd_t pmd) in pmd_pte() 409 static inline pmd_t pte_pmd(pte_t pte) in pte_pmd() 458 static inline int pmd_protnone(pmd_t pmd) in pmd_protnone() 466 static inline int pmd_present(pmd_t pmd) in pmd_present() 476 static inline int pmd_trans_huge(pmd_t pmd) in pmd_trans_huge() 495 static inline pmd_t pmd_mkinvalid(pmd_t pmd) in pmd_mkinvalid() [all …]
|
/openbmc/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()
|
/openbmc/linux/arch/riscv/mm/ |
H A D | pgtable.c | 77 pmd_t *pmd = pud_pgtable(pudp_get(pud)); in pud_free_pmd_page() 97 int pmd_set_huge(pmd_t *pmd, phys_addr_t phys, pgprot_t prot) in pmd_set_huge() 99 pmd_t new_pmd = pfn_pmd(__phys_to_pfn(phys), prot); in pmd_set_huge() 105 int pmd_clear_huge(pmd_t *pmd) in pmd_clear_huge() 113 int pmd_free_pte_page(pmd_t *pmd, unsigned long addr) in pmd_free_pte_page() 126 pmd_t pmdp_collapse_flush(struct vm_area_struct *vma, in pmdp_collapse_flush() 127 unsigned long address, pmd_t *pmdp) in pmdp_collapse_flush() 129 pmd_t pmd = pmdp_huge_get_and_clear(vma->vm_mm, address, pmdp); in pmdp_collapse_flush()
|
/openbmc/linux/arch/arc/include/asm/ |
H A D | hugepage.h | 13 static inline pte_t pmd_pte(pmd_t pmd) in pmd_pte() 18 static inline pmd_t pte_pmd(pte_t pte) in pte_pmd() 42 static inline pmd_t pmd_modify(pmd_t pmd, pgprot_t newprot) in pmd_modify() 52 pmd_t *pmdp, pmd_t pmd) in set_pmd_at() 58 pmd_t *pmd);
|
/openbmc/linux/arch/parisc/include/asm/ |
H A D | pgalloc.h | 41 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()
|
/openbmc/linux/arch/alpha/include/asm/ |
H A D | pgtable.h | 136 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 * pmd in pmd_present() [all...] |