/linux-6.1.9/arch/powerpc/mm/book3s64/ |
D | hash_64k.c | 69 } while (!pte_xchg(ptep, __pte(old_pte), __pte(new_pte))); in __hash_page_4K() 84 rflags = hash_page_do_lazy_icache(rflags, __pte(old_pte), trap); in __hash_page_4K() 89 rpte = __real_pte(__pte(old_pte), ptep, PTRS_PER_PTE); in __hash_page_4K() 129 *ptep = __pte(new_pte & ~H_PAGE_BUSY); in __hash_page_4K() 150 pa = pte_pfn(__pte(old_pte)) << HW_PAGE_SHIFT; in __hash_page_4K() 152 pa = pte_pfn(__pte(old_pte)) << PAGE_SHIFT; in __hash_page_4K() 210 *ptep = __pte(old_pte); in __hash_page_4K() 219 *ptep = __pte(new_pte & ~H_PAGE_BUSY); in __hash_page_4K() 261 } while (!pte_xchg(ptep, __pte(old_pte), __pte(new_pte))); in __hash_page_64K() 264 rpte = __real_pte(__pte(old_pte), ptep, PTRS_PER_PTE); in __hash_page_64K() [all …]
|
D | hugetlbpage.c | 64 } while(!pte_xchg(ptep, __pte(old_pte), __pte(new_pte))); in __hash_page_huge() 75 rpte = __real_pte(__pte(old_pte), ptep, offset); in __hash_page_huge() 82 rflags = hash_page_do_lazy_icache(rflags, __pte(old_pte), trap); in __hash_page_huge() 98 pa = pte_pfn(__pte(old_pte)) << PAGE_SHIFT; in __hash_page_huge() 111 *ptep = __pte(old_pte); in __hash_page_huge() 123 *ptep = __pte(new_pte & ~H_PAGE_BUSY); in __hash_page_huge() 140 return __pte(pte_val); in huge_ptep_modify_prot_start()
|
D | hash_4k.c | 51 } while (!pte_xchg(ptep, __pte(old_pte), __pte(new_pte))); in __hash_page_4K() 58 rpte = __real_pte(__pte(old_pte), ptep, PTRS_PER_PTE); in __hash_page_4K() 62 rflags = hash_page_do_lazy_icache(rflags, __pte(old_pte), trap); in __hash_page_4K() 79 pa = pte_pfn(__pte(old_pte)) << PAGE_SHIFT; in __hash_page_4K() 114 *ptep = __pte(old_pte); in __hash_page_4K() 122 *ptep = __pte(new_pte & ~H_PAGE_BUSY); in __hash_page_4K()
|
/linux-6.1.9/drivers/iommu/amd/ |
D | io_pgtable.c | 223 u64 __pte, __npte; in alloc_pte() local 226 __pte = *pte; in alloc_pte() 227 pte_level = PM_PTE_LEVEL(__pte); in alloc_pte() 233 if (IOMMU_PTE_PRESENT(__pte) && in alloc_pte() 245 cmpxchg64(&lpte[i], __pte, 0ULL); in alloc_pte() 251 if (!IOMMU_PTE_PRESENT(__pte) || in alloc_pte() 261 if (!try_cmpxchg64(pte, &__pte, __npte)) in alloc_pte() 263 else if (IOMMU_PTE_PRESENT(__pte)) in alloc_pte() 275 pte = IOMMU_PTE_PAGE(__pte); in alloc_pte() 370 u64 __pte, *pte; in iommu_v1_map_pages() local [all …]
|
D | io_pgtable_v2.c | 153 u64 __pte, __npte; in v2_alloc_pte() local 155 __pte = *pte; in v2_alloc_pte() 157 if (IOMMU_PTE_PRESENT(__pte) && is_large_pte(__pte)) { in v2_alloc_pte() 164 if (!IOMMU_PTE_PRESENT(__pte)) { in v2_alloc_pte() 171 if (cmpxchg64(pte, __pte, __npte) != __pte) in v2_alloc_pte() 173 else if (IOMMU_PTE_PRESENT(__pte)) in v2_alloc_pte() 180 pte = get_pgtable_pte(__pte); in v2_alloc_pte() 186 u64 *__pte; in v2_alloc_pte() local 189 __pte = get_pgtable_pte(*pte); in v2_alloc_pte() 192 free_pgtable(__pte, end_level - 1); in v2_alloc_pte() [all …]
|
/linux-6.1.9/arch/powerpc/include/asm/book3s/32/ |
D | pgtable.h | 308 *p = __pte((old & ~(pte_basic_t)clr) | set); in pte_update() 336 return __pte(pte_update(mm, addr, ptep, ~_PAGE_HASHPTE, 0, 0)); in ptep_get_and_clear() 434 return __pte(((pte_basic_t)(pfn) << PTE_RPN_SHIFT) | in pfn_pte() 446 return __pte(pte_val(pte) & ~_PAGE_RW); in pte_wrprotect() 451 return __pte(pte_val(pte) & ~_PAGE_EXEC); in pte_exprotect() 456 return __pte(pte_val(pte) & ~_PAGE_DIRTY); in pte_mkclean() 461 return __pte(pte_val(pte) & ~_PAGE_ACCESSED); in pte_mkold() 466 return __pte(pte_val(pte) | _PAGE_EXEC); in pte_mkexec() 476 return __pte(pte_val(pte) | _PAGE_RW); in pte_mkwrite() 481 return __pte(pte_val(pte) | _PAGE_DIRTY); in pte_mkdirty() [all …]
|
/linux-6.1.9/arch/sparc/include/asm/ |
D | pgtable_64.h | 222 return __pte(paddr | pgprot_val(prot)); in pfn_pte() 313 return __pte((pte_val(pte) & mask) | (pgprot_val(prot) & ~mask)); in pte_modify() 319 pte_t pte = __pte(pmd_val(pmd)); in pmd_modify() 380 return __pte(pte_val(pte) | __pte_default_huge_mask()); in pte_mkhuge() 403 pte_t pte = __pte(pmd_val(pmd)); in pmd_mkhuge() 439 return __pte(val); in pte_mkdirty() 463 return __pte(val); in pte_mkclean() 481 return __pte(val | mask); in pte_mkwrite() 505 return __pte(val); in pte_wrprotect() 525 return __pte(pte_val(pte) & ~mask); in pte_mkold() [all …]
|
D | pgtable_32.h | 162 set_pte(ptep, __pte(0)); in __pte_clear() 187 set_pte((pte_t *)&pmd_val(*pmdp), __pte(0)); in pmd_clear() 207 set_pte((pte_t *)pudp, __pte(0)); in pud_clear() 231 return __pte(pte_val(pte) & ~SRMMU_WRITE); in pte_wrprotect() 236 return __pte(pte_val(pte) & ~SRMMU_DIRTY); in pte_mkclean() 241 return __pte(pte_val(pte) & ~SRMMU_REF); in pte_mkold() 246 return __pte(pte_val(pte) | SRMMU_WRITE); in pte_mkwrite() 251 return __pte(pte_val(pte) | SRMMU_DIRTY); in pte_mkdirty() 256 return __pte(pte_val(pte) | SRMMU_REF); in pte_mkyoung() 282 return __pte((page_to_pfn(page) << (PAGE_SHIFT-4)) | pgprot_val(pgprot)); in mk_pte() [all …]
|
/linux-6.1.9/arch/ia64/include/asm/ |
D | pgtable.h | 227 ({ pte_t __pte; pte_val(__pte) = ((pfn) << PAGE_SHIFT) | pgprot_val(pgprot); __pte; }) 236 ({ pte_t __pte; pte_val(__pte) = physpage + pgprot_val(pgprot); __pte; }) 239 (__pte((pte_val(_pte) & ~_PAGE_CHG_MASK) | (pgprot_val(newprot) & _PAGE_CHG_MASK))) 283 #define pte_wrprotect(pte) (__pte(pte_val(pte) & ~_PAGE_AR_RW)) 284 #define pte_mkwrite(pte) (__pte(pte_val(pte) | _PAGE_AR_RW)) 285 #define pte_mkold(pte) (__pte(pte_val(pte) & ~_PAGE_A)) 286 #define pte_mkyoung(pte) (__pte(pte_val(pte) | _PAGE_A)) 287 #define pte_mkclean(pte) (__pte(pte_val(pte) & ~_PAGE_D)) 288 #define pte_mkdirty(pte) (__pte(pte_val(pte) | _PAGE_D)) 289 #define pte_mkhuge(pte) (__pte(pte_val(pte))) [all …]
|
/linux-6.1.9/arch/powerpc/include/asm/nohash/ |
D | pgtable.h | 102 return __pte(((pte_basic_t)(pfn) << PTE_RPN_SHIFT) | in pfn_pte() 110 return __pte(pte_val(pte) & ~_PAGE_EXEC); in pte_exprotect() 115 return __pte(pte_val(pte) & ~_PAGE_DIRTY); in pte_mkclean() 120 return __pte(pte_val(pte) & ~_PAGE_ACCESSED); in pte_mkold() 125 return __pte(pte_val(pte) | _PAGE_SPECIAL); in pte_mkspecial() 131 return __pte(pte_val(pte)); in pte_mkhuge() 138 return __pte(pte_val(pte) & ~_PAGE_USER); in pte_mkprivileged() 145 return __pte(pte_val(pte) | _PAGE_USER); in pte_mkuser() 151 return __pte((pte_val(pte) & _PAGE_CHG_MASK) | pgprot_val(newprot)); in pte_modify()
|
D | pte-e500.h | 105 return __pte((pte_val(pte) & ~_PAGE_USER) | _PAGE_PRIVILEGED); in pte_mkprivileged() 112 return __pte((pte_val(pte) & ~_PAGE_PRIVILEGED) | _PAGE_USER); in pte_mkuser() 120 return __pte((pte_val(pte) & ~_PAGE_BAP_SX) | _PAGE_BAP_UX); in pte_mkexec() 122 return __pte((pte_val(pte) & ~_PAGE_BAP_UX) | _PAGE_BAP_SX); in pte_mkexec()
|
/linux-6.1.9/arch/powerpc/include/asm/nohash/64/ |
D | pgtable.h | 90 return __pte(pte_val(pte) | _PAGE_RW); in pte_mkwrite() 95 return __pte(pte_val(pte) | _PAGE_DIRTY); in pte_mkdirty() 100 return __pte(pte_val(pte) | _PAGE_ACCESSED); in pte_mkyoung() 105 return __pte(pte_val(pte) & ~_PAGE_RW); in pte_wrprotect() 123 return __pte(pmd_val(pmd)); in pmd_pte() 158 return __pte(pud_val(pud)); in pud_pte() 181 *ptep = __pte((old & ~clr) | set); in pte_update() 247 return __pte(old); in ptep_get_and_clear() 267 *ptep = __pte(old | bits); in __ptep_set_access_flags() 293 #define __swp_entry_to_pte(x) __pte((x).val)
|
/linux-6.1.9/arch/xtensa/mm/ |
D | mmu.c | 110 write_dtlb_entry(__pte(xtensa_kio_paddr + CA_WRITEBACK), in init_kio() 112 write_itlb_entry(__pte(xtensa_kio_paddr + CA_WRITEBACK), in init_kio() 114 write_dtlb_entry(__pte(xtensa_kio_paddr + CA_BYPASS), in init_kio() 116 write_itlb_entry(__pte(xtensa_kio_paddr + CA_BYPASS), in init_kio()
|
/linux-6.1.9/arch/powerpc/include/asm/nohash/32/ |
D | hugetlb-8xx.h | 62 unsigned long clr = ~pte_val(pte_wrprotect(__pte(~0))); in huge_ptep_set_wrprotect() 63 unsigned long set = pte_val(pte_wrprotect(__pte(0))); in huge_ptep_set_wrprotect() 74 return __pte(pte_val(entry) | _PAGE_SPS); in arch_make_huge_pte() 76 return __pte(pte_val(entry) | _PAGE_SPS | _PAGE_HUGE); in arch_make_huge_pte()
|
D | pte-8xx.h | 92 return __pte(pte_val(pte) | _PAGE_RO); in pte_wrprotect() 106 return __pte(pte_val(pte) & ~_PAGE_RO); in pte_mkwrite() 120 return __pte(pte_val(pte) | _PAGE_SH); in pte_mkprivileged() 127 return __pte(pte_val(pte) & ~_PAGE_SH); in pte_mkuser() 134 return __pte(pte_val(pte) | _PAGE_SPS | _PAGE_HUGE); in pte_mkhuge()
|
D | pgtable.h | 176 return __pte(pte_val(pte) | _PAGE_RW); in pte_mkwrite() 182 return __pte(pte_val(pte) | _PAGE_DIRTY); in pte_mkdirty() 187 return __pte(pte_val(pte) | _PAGE_ACCESSED); in pte_mkyoung() 193 return __pte(pte_val(pte) & ~_PAGE_RW); in pte_wrprotect() 200 return __pte(pte_val(pte) | _PAGE_EXEC); in pte_mkexec() 283 *p = __pte(new); in pte_update() 308 return __pte(pte_update(mm, addr, ptep, ~0, 0, 0)); in ptep_get_and_clear()
|
/linux-6.1.9/arch/mips/include/asm/ |
D | page.h | 126 #define __pte(x) ({ pte_t __pte = {(x), ((unsigned long long)(x)) >> 32}; __pte; }) macro 130 #define __pte(x) ((pte_t) { (x) } ) macro 135 #define __pte(x) ((pte_t) { (x) } ) macro
|
/linux-6.1.9/arch/riscv/include/asm/ |
D | pgtable.h | 259 return __pte(pmd_val(pmd)); in pmd_pte() 264 return __pte(pud_val(pud)); in pud_pte() 282 return __pte((pfn << _PAGE_PFN_SHIFT) | prot_val); in pfn_pte() 336 return __pte(pte_val(pte) & ~(_PAGE_WRITE)); in pte_wrprotect() 343 return __pte(pte_val(pte) | _PAGE_WRITE); in pte_mkwrite() 350 return __pte(pte_val(pte) | _PAGE_DIRTY); in pte_mkdirty() 355 return __pte(pte_val(pte) & ~(_PAGE_DIRTY)); in pte_mkclean() 360 return __pte(pte_val(pte) | _PAGE_ACCESSED); in pte_mkyoung() 365 return __pte(pte_val(pte) & ~(_PAGE_ACCESSED)); in pte_mkold() 370 return __pte(pte_val(pte) | _PAGE_SPECIAL); in pte_mkspecial() [all …]
|
D | kfence.h | 54 set_pte(pte, __pte(pte_val(*pte) & ~_PAGE_PRESENT)); in kfence_protect_page() 56 set_pte(pte, __pte(pte_val(*pte) | _PAGE_PRESENT)); in kfence_protect_page()
|
/linux-6.1.9/arch/sh/include/asm/ |
D | page.h | 81 #define __pte(x) \ macro 82 ({ pte_t __pte = {(x), ((unsigned long long)(x)) >> 32}; __pte; }) 88 #define __pte(x) ((pte_t) { (x) } ) macro
|
/linux-6.1.9/arch/parisc/include/asm/ |
D | kfence.h | 35 set_pte(pte, __pte(pte_val(*pte) & ~_PAGE_PRESENT)); in kfence_protect_page() 37 set_pte(pte, __pte(pte_val(*pte) | _PAGE_PRESENT)); in kfence_protect_page()
|
/linux-6.1.9/arch/csky/include/asm/ |
D | pgtable.h | 34 (((unsigned int) addr >= PAGE_OFFSET) ? __pte(_PAGE_GLOBAL) : __pte(0))) 38 #define pfn_pte(pfn, prot) __pte(((unsigned long long)(pfn) << PAGE_SHIFT) \ 45 #define __mk_pte(page_nr, pgprot) __pte(((page_nr) << PAGE_SHIFT) | \ 242 return __pte((pte_val(pte) & _PAGE_CHG_MASK) | in pte_modify()
|
/linux-6.1.9/arch/x86/include/asm/ |
D | kfence.h | 57 set_pte(pte, __pte(pte_val(*pte) & ~_PAGE_PRESENT)); in kfence_protect_page() 59 set_pte(pte, __pte(pte_val(*pte) | _PAGE_PRESENT)); in kfence_protect_page()
|
/linux-6.1.9/arch/s390/include/asm/ |
D | pgtable.h | 528 return __pte(pte_val(pte) & ~pgprot_val(prot)); in clear_pte_bit() 533 return __pte(pte_val(pte) | pgprot_val(prot)); in set_pte_bit() 962 set_pte(ptep, __pte(_PAGE_INVALID)); in pte_clear() 1124 res = ptep_xchg_lazy(mm, addr, ptep, __pte(_PAGE_INVALID)); in ptep_get_and_clear() 1142 res = ptep_xchg_direct(vma->vm_mm, addr, ptep, __pte(_PAGE_INVALID)); in ptep_clear_flush() 1165 set_pte(ptep, __pte(_PAGE_INVALID)); in ptep_get_and_clear_full() 1167 res = ptep_xchg_lazy(mm, addr, ptep, __pte(_PAGE_INVALID)); in ptep_get_and_clear_full() 1275 pte_t __pte; in mk_pte_phys() local 1277 __pte = __pte(physpage | pgprot_val(pgprot)); in mk_pte_phys() 1279 __pte = clear_pte_bit(__pte, __pgprot(_PAGE_NOEXEC)); in mk_pte_phys() [all …]
|
/linux-6.1.9/arch/arm/include/asm/ |
D | pgtable-2level-types.h | 31 #define __pte(x) ((pte_t) { (x) } ) macro 49 #define __pte(x) (x) macro
|