| /linux/arch/m68k/include/asm/ |
| H A D | mcf_pgtable.h | 99 static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) in pte_modify() argument 101 pte_val(pte) = (pte_val(pte) & CF_PAGE_CHG_MASK) | pgprot_val(newprot); in pte_modify() 102 return pte; in pte_modify() 112 #define __pte_page(pte) ((void *) (pte_val(pte) & PAGE_MASK)) argument 115 static inline int pte_none(pte_t pte) in pte_none() argument 117 return !pte_val(pte); in pte_none() 120 static inline int pte_present(pte_t pte) in pte_present() argument 122 return pte_val(pte) & CF_PAGE_VALID; in pte_present() 131 #define pte_page(pte) virt_to_page(__pte_page(pte)) argument 152 static inline int pte_read(pte_t pte) in pte_read() argument [all …]
|
| H A D | sun3_pgtable.h | 79 static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) in pte_modify() argument 81 pte_val(pte) = (pte_val(pte) & SUN3_PAGE_CHG_MASK) | pgprot_val(newprot); in pte_modify() 82 return pte; in pte_modify() 87 #define __pte_page(pte) \ argument 88 (__va ((pte_val (pte) & SUN3_PAGE_PGNUM_MASK) << PAGE_SHIFT)) 95 static inline int pte_none (pte_t pte) { return !pte_val (pte); } in pte_none() argument 96 static inline int pte_present (pte_t pte) { return pte_val (pte) & SUN3_PAGE_VALID; } in pte_present() argument 103 #define pte_pfn(pte) (pte_val(pte) & SUN3_PAGE_PGNUM_MASK) argument 107 #define pte_page(pte) virt_to_page(__pte_page(pte)) argument 134 static inline int pte_write(pte_t pte) { return pte_val(pte) & SUN3_PAGE_WRITEABLE; } in pte_write() argument [all …]
|
| H A D | motorola_pgtable.h | 84 static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) in pte_modify() argument 86 pte_val(pte) = (pte_val(pte) & _PAGE_CHG_MASK) | pgprot_val(newprot); in pte_modify() 87 return pte; in pte_modify() 100 #define __pte_page(pte) ((unsigned long)__va(pte_val(pte) & PAGE_MASK)) argument 105 #define pte_none(pte) (!pte_val(pte)) argument 106 #define pte_present(pte) (pte_val(pte) & (_PAGE_PRESENT | _PAGE_PROTNONE)) argument 110 #define pte_page(pte) virt_to_page(__va(pte_val(pte))) argument 111 #define pte_pfn(pte) (pte_val(pte) >> PAGE_SHIFT) argument 146 static inline int pte_write(pte_t pte) { return !(pte_val(pte) & _PAGE_RONLY); } in pte_write() argument 147 static inline int pte_dirty(pte_t pte) { return pte_val(pte) & _PAGE_DIRTY; } in pte_dirty() argument [all …]
|
| H A D | mmu_context.h | 102 pte_t *pte = NULL; in load_ksp_mmu() local 140 pte = (mmuar >= PAGE_OFFSET) ? pte_offset_kernel(pmd, mmuar) in load_ksp_mmu() 142 if (!pte || pte_none(*pte) || !pte_present(*pte)) in load_ksp_mmu() 145 set_pte(pte, pte_mkyoung(*pte)); in load_ksp_mmu() 147 if (!pte_dirty(*pte) && mmuar <= PAGE_OFFSET) in load_ksp_mmu() 148 set_pte(pte, pte_wrprotect(*pte)); in load_ksp_mmu() 151 (((int)(pte->pte) & (int)CF_PAGE_MMUTR_MASK) in load_ksp_mmu() 154 mmu_write(MMUDR, (pte_val(*pte) & PAGE_MASK) | in load_ksp_mmu() 155 ((pte->pte) & CF_PAGE_MMUDR_MASK) | MMUDR_SZ_8KB | MMUDR_X); in load_ksp_mmu() 164 if (pte && mmuar < PAGE_OFFSET) in load_ksp_mmu() [all …]
|
| /linux/arch/powerpc/include/asm/nohash/ |
| H A D | pgtable.h | 37 static inline unsigned long pte_huge_size(pte_t pte) in pte_huge_size() argument 159 static inline pte_t pte_mkwrite_novma(pte_t pte) in pte_mkwrite_novma() argument 164 return __pte(pte_val(pte) | _PAGE_RW); in pte_mkwrite_novma() 168 static inline pte_t pte_mkdirty(pte_t pte) in pte_mkdirty() argument 170 return __pte(pte_val(pte) | _PAGE_DIRTY); in pte_mkdirty() 173 static inline pte_t pte_mkyoung(pte_t pte) in pte_mkyoung() argument 175 return __pte(pte_val(pte) | _PAGE_ACCESSED); in pte_mkyoung() 179 static inline pte_t pte_wrprotect(pte_t pte) in pte_wrprotect() argument 181 return __pte(pte_val(pte) & ~_PAGE_WRITE); in pte_wrprotect() 186 static inline pte_t pte_mkexec(pte_t pte) in pte_mkexec() argument [all …]
|
| /linux/arch/powerpc/include/asm/book3s/32/ |
| H A D | pgtable.h | 366 #define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val(pte) >> 3 }) argument 369 static inline bool pte_swp_exclusive(pte_t pte) in pte_swp_exclusive() argument 371 return pte_val(pte) & _PAGE_SWP_EXCLUSIVE; in pte_swp_exclusive() 374 static inline pte_t pte_swp_mkexclusive(pte_t pte) in pte_swp_mkexclusive() argument 376 return __pte(pte_val(pte) | _PAGE_SWP_EXCLUSIVE); in pte_swp_mkexclusive() 379 static inline pte_t pte_swp_clear_exclusive(pte_t pte) in pte_swp_clear_exclusive() argument 381 return __pte(pte_val(pte) & ~_PAGE_SWP_EXCLUSIVE); in pte_swp_clear_exclusive() 385 static inline bool pte_read(pte_t pte) in pte_read() argument 387 return !!(pte_val(pte) & _PAGE_READ); in pte_read() 390 static inline bool pte_write(pte_t pte) in pte_write() argument [all …]
|
| /linux/arch/parisc/include/asm/ |
| H A D | pgtable.h | 64 extern void __update_cache(pte_t pte); 304 static inline int pte_dirty(pte_t pte) { return pte_val(pte) & _PAGE_DIRTY; } in pte_dirty() argument 305 static inline int pte_young(pte_t pte) { return pte_val(pte) & _PAGE_ACCESSED; } in pte_young() argument 306 static inline int pte_write(pte_t pte) { return pte_val(pte) & _PAGE_WRITE; } in pte_write() argument 307 static inline int pte_special(pte_t pte) { return pte_val(pte) & _PAGE_SPECIAL; } in pte_special() argument 309 static inline pte_t pte_mkclean(pte_t pte) { pte_val(pte) &= ~_PAGE_DIRTY; return pte; } in pte_mkclean() argument 310 static inline pte_t pte_mkold(pte_t pte) { pte_val(pte) &= ~_PAGE_ACCESSED; return pte; } in pte_mkold() argument 311 static inline pte_t pte_wrprotect(pte_t pte) { pte_val(pte) &= ~_PAGE_WRITE; return pte; } in pte_wrprotect() argument 312 static inline pte_t pte_mkdirty(pte_t pte) { pte_val(pte) |= _PAGE_DIRTY; return pte; } in pte_mkdirty() argument 313 static inline pte_t pte_mkyoung(pte_t pte) { pte_val(pte) |= _PAGE_ACCESSED; return pte; } in pte_mkyoung() argument [all …]
|
| /linux/arch/loongarch/include/asm/ |
| H A D | pgtable.h | 287 #define pte_pfn(x) ((unsigned long)(((x).pte & _PFN_MASK) >> PFN_PTE_SHIFT)) 336 pte_t pte; in mk_swap_pte() local 337 pte_val(pte) = ((type & __SWP_TYPE_MASK) << __SWP_TYPE_SHIFT) | (offset << __SWP_OFFSET_SHIFT); in mk_swap_pte() 338 return pte; in mk_swap_pte() 347 #define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val(pte) }) argument 350 static inline bool pte_swp_exclusive(pte_t pte) in pte_swp_exclusive() argument 352 return pte_val(pte) & _PAGE_SWP_EXCLUSIVE; in pte_swp_exclusive() 355 static inline pte_t pte_swp_mkexclusive(pte_t pte) in pte_swp_mkexclusive() argument 357 pte_val(pte) |= _PAGE_SWP_EXCLUSIVE; in pte_swp_mkexclusive() 358 return pte; in pte_swp_mkexclusive() [all …]
|
| /linux/arch/x86/include/asm/ |
| H A D | pgtable.h | 60 #define set_pte(ptep, pte) native_set_pte(ptep, pte) argument 62 #define set_pte_atomic(ptep, pte) \ argument 63 native_set_pte_atomic(ptep, pte) 148 static inline bool pte_dirty(pte_t pte) in pte_dirty() argument 150 return pte_flags(pte) & _PAGE_DIRTY_BITS; in pte_dirty() 153 static inline bool pte_shstk(pte_t pte) in pte_shstk() argument 156 (pte_flags(pte) & (_PAGE_RW | _PAGE_DIRTY)) == _PAGE_DIRTY; in pte_shstk() 159 static inline int pte_young(pte_t pte) in pte_young() argument 161 return pte_flags(pte) & _PAGE_ACCESSED; in pte_young() 164 static inline bool pte_decrypted(pte_t pte) in pte_decrypted() argument [all …]
|
| /linux/drivers/iommu/ |
| H A D | io-pgtable-arm-v7s.c | 83 #define ARM_V7S_PTE_IS_VALID(pte) (((pte) & 0x3) != 0) argument 84 #define ARM_V7S_PTE_IS_TABLE(pte, lvl) \ argument 85 ((lvl) == 1 && (((pte) & 0x3) == ARM_V7S_PTE_TYPE_TABLE)) 171 static bool arm_v7s_pte_is_cont(arm_v7s_iopte pte, int lvl); 184 static arm_v7s_iopte to_mtk_iopte(phys_addr_t paddr, arm_v7s_iopte pte) in to_mtk_iopte() argument 187 pte |= ARM_V7S_ATTR_MTK_PA_BIT32; in to_mtk_iopte() 189 pte |= ARM_V7S_ATTR_MTK_PA_BIT33; in to_mtk_iopte() 191 pte |= ARM_V7S_ATTR_MTK_PA_BIT34; in to_mtk_iopte() 192 return pte; in to_mtk_iopte() 198 arm_v7s_iopte pte = paddr & ARM_V7S_LVL_MASK(lvl); in paddr_to_iopte() local [all …]
|
| H A D | io-pgtable-dart.c | 67 #define iopte_deref(pte, d) __va(iopte_to_paddr(pte, d)) argument 85 dart_iopte pte; in paddr_to_iopte() local 91 pte = paddr >> APPLE_DART2_PADDR_SHIFT; in paddr_to_iopte() 92 pte &= APPLE_DART2_PADDR_MASK; in paddr_to_iopte() 94 return pte; in paddr_to_iopte() 97 static phys_addr_t iopte_to_paddr(dart_iopte pte, in iopte_to_paddr() argument 103 return pte & APPLE_DART1_PADDR_MASK; in iopte_to_paddr() 106 paddr = pte & APPLE_DART2_PADDR_MASK; in iopte_to_paddr() 118 dart_iopte pte = prot; in dart_init_pte() local 129 pte |= FIELD_PREP(APPLE_DART_PTE_SUBPAGE_START, 0); in dart_init_pte() [all …]
|
| /linux/arch/powerpc/kvm/ |
| H A D | book3s_pr_papr.c | 92 unsigned long pte[2]; in kvmppc_h_pr_remove() local 98 if (copy_from_user(pte, (void __user *)pteg, sizeof(pte))) in kvmppc_h_pr_remove() 100 pte[0] = be64_to_cpu((__force __be64)pte[0]); in kvmppc_h_pr_remove() 101 pte[1] = be64_to_cpu((__force __be64)pte[1]); in kvmppc_h_pr_remove() 104 if ((pte[0] & HPTE_V_VALID) == 0 || in kvmppc_h_pr_remove() 105 ((flags & H_AVPN) && (pte[0] & ~0x7fUL) != avpn) || in kvmppc_h_pr_remove() 106 ((flags & H_ANDCOND) && (pte[0] & avpn) != 0)) in kvmppc_h_pr_remove() 113 rb = compute_tlbie_rb(pte[0], pte[1], pte_index); in kvmppc_h_pr_remove() 117 kvmppc_set_gpr(vcpu, 4, pte[0]); in kvmppc_h_pr_remove() 118 kvmppc_set_gpr(vcpu, 5, pte[1]); in kvmppc_h_pr_remove() [all …]
|
| H A D | trace_pr.h | 64 TP_PROTO(struct hpte_cache *pte), 65 TP_ARGS(pte), 77 __entry->host_vpn = pte->host_vpn; 78 __entry->pfn = pte->pfn; 79 __entry->eaddr = pte->pte.eaddr; 80 __entry->vpage = pte->pte.vpage; 81 __entry->raddr = pte->pte.raddr; 82 __entry->flags = (pte->pte.may_read ? 0x4 : 0) | 83 (pte->pte.may_write ? 0x2 : 0) | 84 (pte->pte.may_execute ? 0x1 : 0); [all …]
|
| H A D | book3s_32_mmu.c | 70 struct kvmppc_pte *pte, bool data, 84 struct kvmppc_pte pte; in kvmppc_mmu_book3s_32_ea_to_vp() local 86 if (!kvmppc_mmu_book3s_32_xlate_bat(vcpu, eaddr, &pte, data, false)) in kvmppc_mmu_book3s_32_ea_to_vp() 87 return pte.vpage; in kvmppc_mmu_book3s_32_ea_to_vp() 128 struct kvmppc_pte *pte, bool data, in kvmppc_mmu_book3s_32_xlate_bat() argument 160 pte->vpage = (((u64)eaddr >> 12) & 0xffff) | vsid; in kvmppc_mmu_book3s_32_xlate_bat() 162 pte->raddr = bat->brpn | (eaddr & ~bat->bepi_mask); in kvmppc_mmu_book3s_32_xlate_bat() 163 pte->may_read = bat->pp; in kvmppc_mmu_book3s_32_xlate_bat() 164 pte->may_write = bat->pp > 1; in kvmppc_mmu_book3s_32_xlate_bat() 165 pte->may_execute = true; in kvmppc_mmu_book3s_32_xlate_bat() [all …]
|
| H A D | book3s_64_mmu_radix.c | 149 u64 pte, base, gpa; in kvmppc_mmu_walk_radix_tree() local 187 pte = __be64_to_cpu(rpte); in kvmppc_mmu_walk_radix_tree() 188 if (!(pte & _PAGE_PRESENT)) in kvmppc_mmu_walk_radix_tree() 191 if (pte & _PAGE_PTE) in kvmppc_mmu_walk_radix_tree() 194 base = pte & RPDB_MASK; in kvmppc_mmu_walk_radix_tree() 195 bits = pte & RPDS_MASK; in kvmppc_mmu_walk_radix_tree() 204 gpa = pte & 0x01fffffffffff000ul; in kvmppc_mmu_walk_radix_tree() 218 gpte->may_read = !!(pte & _PAGE_READ); in kvmppc_mmu_walk_radix_tree() 219 gpte->may_write = !!(pte & _PAGE_WRITE); in kvmppc_mmu_walk_radix_tree() 220 gpte->may_execute = !!(pte & _PAGE_EXEC); in kvmppc_mmu_walk_radix_tree() [all …]
|
| /linux/arch/x86/kernel/ |
| H A D | head32.c | 42 *pl2p = (pte_t){ .pte = 0 }; in zap_early_initrd_mapping() 45 *(pl2p + ((PAGE_OFFSET >> PGDIR_SHIFT))) = (pte_t) {.pte = 0}; in zap_early_initrd_mapping() 105 static __init __no_stack_protector pte_t init_map(pte_t pte, pte_t **ptep, pl2_t **pl2p, in init_map() argument 108 while ((pte.pte & PTE_PFN_MASK) < limit) { in init_map() 119 **ptep = pte; in init_map() 120 pte.pte += PAGE_SIZE; in init_map() 125 return pte; in init_map() 132 pte_t pte, *ptep = (pte_t *)__pa_nodebug(__brk_base); in mk_early_pgtbl_32() local 137 pte.pte = PTE_IDENT_ATTR; in mk_early_pgtbl_32() 138 pte = init_map(pte, &ptep, &pl2p, limit); in mk_early_pgtbl_32() [all …]
|
| /linux/arch/arm/include/asm/ |
| H A D | pgalloc.h | 41 #define pud_populate(mm,pmd,pte) do { } while (0) argument 43 #define pud_populate(mm,pmd,pte) BUG() argument 50 static inline void clean_pte_table(pte_t *pte) in clean_pte_table() argument 52 clean_dcache_area(pte + PTE_HWTABLE_PTRS, PTE_HWTABLE_SIZE); in clean_pte_table() 80 pte_t *pte = __pte_alloc_one_kernel(mm); in pte_alloc_one_kernel() local 82 if (pte) in pte_alloc_one_kernel() 83 clean_pte_table(pte); in pte_alloc_one_kernel() 85 return pte; in pte_alloc_one_kernel() 97 struct page *pte; in pte_alloc_one() local 99 pte = __pte_alloc_one(mm, GFP_PGTABLE_USER | PGTABLE_HIGHMEM); in pte_alloc_one() [all …]
|
| /linux/arch/arc/include/asm/ |
| H A D | pgtable-bits-arcv2.h | 80 #define pte_write(pte) (pte_val(pte) & _PAGE_WRITE) argument 81 #define pte_dirty(pte) (pte_val(pte) & _PAGE_DIRTY) argument 82 #define pte_young(pte) (pte_val(pte) & _PAGE_ACCESSED) argument 83 #define pte_special(pte) (pte_val(pte) & _PAGE_SPECIAL) argument 86 static inline pte_t pte_##fn(pte_t pte) { pte_val(pte) op; return pte; } 98 static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) in pte_modify() argument 100 return __pte((pte_val(pte) & _PAGE_CHG_MASK) | pgprot_val(newprot)); in pte_modify() 130 #define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val(pte) }) argument 133 static inline bool pte_swp_exclusive(pte_t pte) in pte_swp_exclusive() argument 135 return pte_val(pte) & _PAGE_SWP_EXCLUSIVE; in pte_swp_exclusive()
|
| /linux/arch/arm64/mm/ |
| H A D | hugetlbpage.c | 130 pte_t pte = __ptep_get(ptep); in huge_ptep_get() local 132 if (pte_dirty(pte)) in huge_ptep_get() 135 if (pte_young(pte)) in huge_ptep_get() 155 pte_t pte, tmp_pte; in get_clear_contig() local 158 pte = __ptep_get_and_clear_anysz(mm, addr, ptep, pgsize); in get_clear_contig() 159 present = pte_present(pte); in get_clear_contig() 166 pte = pte_mkdirty(pte); in get_clear_contig() 168 pte = pte_mkyoung(pte); in get_clear_contig() 171 return pte; in get_clear_contig() 216 pte_t *ptep, pte_t pte, unsigned long sz) in set_huge_pte_at() argument [all …]
|
| /linux/arch/parisc/kernel/ |
| H A D | entry.S | 386 .macro L2_ptep pmd,pte,index,va,fault 394 copy %r0,\pte 406 .macro L3_ptep pgd,pte,index,va,fault 408 copy %r0,\pte 414 L2_ptep \pgd,\pte,\index,\va,\fault 418 .macro ptl_lock spc,ptp,pte,tmp,tmp1,fault 425 LDREG 0(\ptp),\pte 426 bb,<,n \pte,_PAGE_PRESENT_BIT,3f 431 2: LDREG 0(\ptp),\pte 432 bb,>=,n \pte,_PAGE_PRESENT_BIT,\fault [all …]
|
| /linux/arch/sh/include/asm/ |
| H A D | pgtable_32.h | 300 static inline void set_pte(pte_t *ptep, pte_t pte) in set_pte() argument 302 ptep->pte_high = pte.pte_high; in set_pte() 304 ptep->pte_low = pte.pte_low; in set_pte() 339 #define pte_not_present(pte) (!((pte).pte_low & _PAGE_PRESENT)) argument 340 #define pte_dirty(pte) ((pte).pte_low & _PAGE_DIRTY) argument 341 #define pte_young(pte) ((pte).pte_low & _PAGE_ACCESSED) argument 342 #define pte_special(pte) ((pte).pte_low & _PAGE_SPECIAL) argument 345 #define pte_write(pte) \ argument 346 ((pte).pte_high & (_PAGE_EXT_USER_WRITE | _PAGE_EXT_KERN_WRITE)) 348 #define pte_write(pte) ((pte).pte_low & _PAGE_RW) argument [all …]
|
| /linux/mm/ |
| H A D | memory.c | 425 void pmd_install(struct mm_struct *mm, pmd_t *pmd, pgtable_t *pte) in pmd_install() argument 445 pmd_populate(mm, pmd, *pte); in pmd_install() 446 *pte = NULL; in pmd_install() 682 pte_t pte, struct page *page) in print_bad_pte() argument 684 auto entry = pte_val(pte); in print_bad_pte() 825 pte_t pte) in vm_normal_page() argument 827 auto entry = pte_val(pte); in vm_normal_page() 829 return __vm_normal_page(vma, addr, pte_pfn(pte), pte_special(pte), in vm_normal_page() 846 pte_t pte) in vm_normal_folio() argument 848 struct page *page = vm_normal_page(vma, addr, pte); in vm_normal_folio() [all …]
|
| H A D | page_vma_mapped.c | 24 pvmw->pte = pte_offset_map_lock(pvmw->vma->vm_mm, pvmw->pmd, in map_pte() 27 return !!pvmw->pte; in map_pte() 39 pvmw->pte = pte_offset_map_rw_nolock(pvmw->vma->vm_mm, pvmw->pmd, in map_pte() 41 if (!pvmw->pte) in map_pte() 44 ptent = ptep_get_lockless(pvmw->pte); in map_pte() 77 pte_unmap_unlock(pvmw->pte, *ptlp); in map_pte() 114 pvmw->pte); in check_pte() 116 ptent = ptep_get(pvmw->pte); in check_pte() 199 if (pvmw->pmd && !pvmw->pte) in page_vma_mapped_walk() 206 if (pvmw->pte) in page_vma_mapped_walk() [all …]
|
| /linux/arch/csky/include/asm/ |
| H A D | pgalloc.h | 14 pte_t *pte) in pmd_populate_kernel() argument 16 set_pmd(pmd, __pmd(__pa(pte))); in pmd_populate_kernel() 20 pgtable_t pte) in pmd_populate() argument 22 set_pmd(pmd, __pmd(__pa(page_address(pte)))); in pmd_populate() 29 pte_t *pte; in pte_alloc_one_kernel() local 32 pte = __pte_alloc_one_kernel(mm); in pte_alloc_one_kernel() 33 if (!pte) in pte_alloc_one_kernel() 37 (pte + i)->pte_low = _PAGE_GLOBAL; in pte_alloc_one_kernel() 39 return pte; in pte_alloc_one_kernel() 64 #define __pte_free_tlb(tlb, pte, address) \ argument [all …]
|
| /linux/include/trace/events/ |
| H A D | thp.h | 14 TP_PROTO(unsigned long addr, unsigned long pte), 15 TP_ARGS(addr, pte), 18 __field(unsigned long, pte) 23 __entry->pte = pte; 26 TP_printk("Set page table entry with 0x%lx with 0x%lx", __entry->addr, __entry->pte) 41 TP_PROTO(unsigned long addr, unsigned long pte, unsigned long clr, unsigned long set), 42 TP_ARGS(addr, pte, clr, set), 45 __field(unsigned long, pte) 52 __entry->pte = pte; 58 …r 0x%lx and pte = 0x%lx clr = 0x%lx, set = 0x%lx", __entry->addr, __entry->pte, __entry->clr, __en…
|