/kernel/linux/linux-6.6/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 *pmd 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 *pmd [all...] |
/kernel/linux/linux-6.6/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 pm [all...] |
/kernel/linux/linux-5.10/include/linux/ |
H A D | pgtable.h | 71 static inline pte_t *pte_offset_kernel(pmd_t *pmd, unsigned long address) in pte_offset_kernel() 90 static inline pmd_t *pmd_offset(pud_t *pud, unsigned long address) in pmd_offset() 132 static inline pmd_t *pmd_off(struct mm_struct *mm, unsigned long va) in pmd_off() 137 static inline pmd_t *pmd_off_k(unsigned long va) in pmd_off_k() 144 pmd_t *pmd = pmd_off_k(vaddr); in virt_to_kpte() 158 unsigned long address, pmd_t *pmdp, 159 pmd_t entry, int dirty); 165 unsigned long address, pmd_t *pmdp, in pmdp_set_access_flags() 166 pmd_t entry, int dirty) in pmdp_set_access_flags() 200 pmd_t *pmd in pmdp_test_and_clear_young() [all...] |
/kernel/linux/linux-6.6/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_pm [all...] |
/kernel/linux/linux-5.10/arch/loongarch/include/asm/ |
H A D | pgtable.h | 82 #define PMD_T_LOG2 (__builtin_ffs(sizeof(pmd_t)) - 1) 187 unsigned long address, pmd_t *pmdp) in update_mmu_cache_pmd() 199 static inline int pmd_trans_huge(pmd_t pmd) in pmd_trans_huge() 204 static inline pmd_t pmd_mkhuge(pmd_t pmd) in pmd_mkhuge() 214 static inline int pmd_write(pmd_t pmd) in pmd_write() 219 static inline pmd_t pmd_mkwrite(pmd_t pmd) in pmd_mkwrite() 227 static inline pmd_t pmd_wrprotect(pmd_t pm [all...] |
/kernel/linux/linux-6.6/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() 493 static inline pmd_t pmd_set_flags(pmd_t pm [all...] |
/kernel/linux/linux-5.10/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) 109 static inline char *get_hpte_slot_array(pmd_t *pmdp) in get_hpte_slot_array() 134 static inline int hash__pmd_trans_huge(pmd_t pmd) in hash__pmd_trans_huge() 139 static inline int hash__pmd_same(pmd_t pmd_a, pmd_t pmd_b) in hash__pmd_same() 145 static inline pmd_t hash__pmd_mkhuge(pmd_t pmd) in hash__pmd_mkhuge() 152 unsigned long addr, pmd_t *pmdp, 154 extern pmd_t hash__pmdp_collapse_flush(struct vm_area_struct *vma, 155 unsigned long address, pmd_t *pmd [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 int hash__pmd_same(pmd_t pmd_a, pmd_t pmd_b) in hash__pmd_same() 271 static inline pmd_t hash__pmd_mkhuge(pmd_t pmd) in hash__pmd_mkhuge() 277 unsigned long addr, pmd_t *pmdp, 279 extern pmd_t hash__pmdp_collapse_flus [all...] |
H A D | radix.h | 131 #define RADIX_PMD_TABLE_SIZE (sizeof(pmd_t) << RADIX_PMD_INDEX_SIZE) 232 static inline int radix__pmd_bad(pmd_t pmd) in radix__pmd_bad() 237 static inline int radix__pmd_same(pmd_t pmd_a, pmd_t pmd_b) in radix__pmd_same() 255 static inline int radix__pmd_trans_huge(pmd_t pmd) in radix__pmd_trans_huge() 260 static inline pmd_t radix__pmd_mkhuge(pmd_t pmd) in radix__pmd_mkhuge() 266 pmd_t *pmdp, unsigned long clr, 268 extern pmd_t radix__pmdp_collapse_flush(struct vm_area_struct *vma, 269 unsigned long address, pmd_t *pmd [all...] |
/kernel/linux/linux-5.10/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 pm [all...] |
H A D | pgtable-nopmd.h | 18 typedef struct { pud_t pud; } pmd_t; typedef 42 #define set_pud(pudptr, pudval) set_pmd((pmd_t *)(pudptr), (pmd_t) { pudval }) 44 static inline pmd_t * pmd_offset(pud_t * pud, unsigned long address) in pmd_offset() 46 return (pmd_t *)pud; in pmd_offset() 51 #define __pmd(x) ((pmd_t) { __pud(x) } ) 53 #define pud_page(pud) (pmd_page((pmd_t){ pud })) 54 #define pud_pgtable(pud) ((pmd_t *)(pmd_page_vaddr((pmd_t){ pud }))) 61 static inline void pmd_free(struct mm_struct *mm, pmd_t *pm [all...] |
/kernel/linux/linux-6.6/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 pm [all...] |
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 *pm [all...] |
/kernel/linux/linux-6.6/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) 109 static inline char *get_hpte_slot_array(pmd_t *pmdp) in get_hpte_slot_array() 134 static inline int hash__pmd_trans_huge(pmd_t pmd) in hash__pmd_trans_huge() 139 static inline pmd_t hash__pmd_mkhuge(pmd_t pmd) in hash__pmd_mkhuge() 146 unsigned long addr, pmd_t *pmdp, 148 extern pmd_t hash__pmdp_collapse_flush(struct vm_area_struct *vma, 149 unsigned long address, pmd_t *pmdp); 150 extern void hash__pgtable_trans_huge_deposit(struct mm_struct *mm, pmd_t *pmdp, 152 extern pgtable_t hash__pgtable_trans_huge_withdraw(struct mm_struct *mm, pmd_t *pmd [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 *pmd [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 *pmd [all...] |
/kernel/linux/linux-5.10/arch/x86/include/asm/ |
H A D | pgtable.h | 163 static inline int pmd_dirty(pmd_t pmd) in pmd_dirty() 168 static inline int pmd_young(pmd_t pmd) in pmd_young() 219 static inline unsigned long pmd_pfn(pmd_t pmd) in pmd_pfn() 253 static inline int pmd_large(pmd_t pte) in pmd_large() 260 static inline int pmd_trans_huge(pmd_t pmd) in pmd_trans_huge() 279 static inline int pmd_devmap(pmd_t pmd) in pmd_devmap() 399 static inline pmd_t pmd_set_flags(pmd_t pmd, pmdval_t set) in pmd_set_flags() 406 static inline pmd_t pmd_clear_flags(pmd_t pm [all...] |
/kernel/linux/linux-6.6/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_invalidat [all...] |
/kernel/linux/linux-5.10/arch/s390/include/asm/ |
H A D | pgtable.h | 696 static inline int pmd_large(pmd_t pmd) in pmd_large() 701 static inline int pmd_bad(pmd_t pmd) in pmd_bad() 730 static inline int pmd_present(pmd_t pmd) in pmd_present() 735 static inline int pmd_none(pmd_t pmd) in pmd_none() 741 static inline int pmd_write(pmd_t pmd) in pmd_write() 752 static inline int pmd_dirty(pmd_t pmd) in pmd_dirty() 757 static inline int pmd_young(pmd_t pmd) in pmd_young() 798 static inline int pmd_protnone(pmd_t pmd) in pmd_protnone() 825 static inline int pmd_soft_dirty(pmd_t pmd) in pmd_soft_dirty() 830 static inline pmd_t pmd_mksoft_dirt [all...] |
/kernel/linux/linux-5.10/arch/powerpc/mm/book3s64/ |
H A D | pgtable.c | 37 pmd_t *pmdp, pmd_t entry, int dirty) in pmdp_set_access_flags() 57 unsigned long address, pmd_t *pmdp) in pmdp_test_and_clear_young() 66 pmd_t *pmdp, pmd_t pmd) in set_pmd_at() 89 * it casts pmd_t to pte_t. Since format of pte_t is different from 90 * pmd_t we want to prevent transit from pmd pointing to page table 106 pmd_t pmdp_invalidate(struct vm_area_struct *vma, unsigned long address, in pmdp_invalidate() 107 pmd_t *pmdp) in pmdp_invalidate() 116 pmd_t pmdp_huge_get_and_clear_ful [all...] |
/kernel/linux/linux-5.10/arch/mips/include/asm/ |
H A D | pgtable.h | 261 #define PMD_T_LOG2 (__builtin_ffs(sizeof(pmd_t)) - 1) 556 unsigned long address, pmd_t *pmdp) 585 static inline int pmd_trans_huge(pmd_t pmd) 590 static inline pmd_t pmd_mkhuge(pmd_t pmd) 598 pmd_t *pmdp, pmd_t pmd); 601 static inline int pmd_write(pmd_t pmd) 606 static inline pmd_t pmd_wrprotect(pmd_t pm [all...] |
/kernel/linux/linux-6.6/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 pm [all...] |
/kernel/linux/linux-5.10/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() 225 static int preallocate_pmds(struct mm_struct *mm, pmd_t *pmds[], int count) in preallocate_pmds() 235 pmd_t *pmd = (pmd_t *)__get_free_page(gfp); in preallocate_pmds() 267 pmd_t *pmd = (pmd_t *)pgd_page_vaddr(pgd); in mop_up_one_pmd() 296 static void pgd_prepopulate_pmd(struct mm_struct *mm, pgd_t *pgd, pmd_t *pmds[]) in pgd_prepopulate_pmd() 309 pmd_t *pm in pgd_prepopulate_pmd() [all...] |
/kernel/linux/linux-5.10/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() 43 static inline pmd_t pmd_modify(pmd_t pmd, pgprot_t newprot) in pmd_modify() 53 pmd_t *pmdp, pmd_t pmd) in set_pmd_at() 59 pmd_t *pmd); 63 extern void pgtable_trans_huge_deposit(struct mm_struct *mm, pmd_t *pmdp, 67 extern pgtable_t pgtable_trans_huge_withdraw(struct mm_struct *mm, pmd_t *pmdp);
|