| /linux/arch/s390/mm/ |
| H A D | pgtable.c | 41 pte_t *ptep, int nodat) in ptep_ipte_local() argument 54 __ptep_ipte(addr, ptep, opt, asce, IPTE_LOCAL); in ptep_ipte_local() 56 __ptep_ipte(addr, ptep, 0, 0, IPTE_LOCAL); in ptep_ipte_local() 61 pte_t *ptep, int nodat) in ptep_ipte_global() argument 74 __ptep_ipte(addr, ptep, opt, asce, IPTE_GLOBAL); in ptep_ipte_global() 76 __ptep_ipte(addr, ptep, 0, 0, IPTE_GLOBAL); in ptep_ipte_global() 81 unsigned long addr, pte_t *ptep, in ptep_flush_direct() argument 86 old = *ptep; in ptep_flush_direct() 92 ptep_ipte_local(mm, addr, ptep, nodat); in ptep_flush_direct() 94 ptep_ipte_global(mm, addr, ptep, nodat); in ptep_flush_direct() [all …]
|
| /linux/arch/arm64/mm/ |
| H A D | hugetlbpage.c | 83 pte_t *ptep, size_t *pgsize) in find_num_contig() argument 94 if ((pte_t *)pmdp == ptep) { in find_num_contig() 123 pte_t huge_ptep_get(struct mm_struct *mm, unsigned long addr, pte_t *ptep) in huge_ptep_get() argument 127 pte_t orig_pte = __ptep_get(ptep); in huge_ptep_get() 132 ncontig = find_num_contig(mm, addr, ptep, &pgsize); in huge_ptep_get() 133 for (i = 0; i < ncontig; i++, ptep++) { in huge_ptep_get() 134 pte_t pte = __ptep_get(ptep); in huge_ptep_get() 155 pte_t *ptep, in get_clear_contig() argument 162 pte = __ptep_get_and_clear_anysz(mm, ptep, pgsize); in get_clear_contig() 165 ptep++; in get_clear_contig() [all …]
|
| /linux/arch/riscv/mm/ |
| H A D | hugetlbpage.c | 6 pte_t huge_ptep_get(struct mm_struct *mm, unsigned long addr, pte_t *ptep) in huge_ptep_get() argument 10 pte_t orig_pte = ptep_get(ptep); in huge_ptep_get() 17 for (i = 0; i < pte_num; i++, ptep++) { in huge_ptep_get() 18 pte_t pte = ptep_get(ptep); in huge_ptep_get() 150 pte_t *ptep, in get_clear_contig() argument 156 pte = ptep_get_and_clear(mm, addr, ptep); in get_clear_contig() 159 ptep++; in get_clear_contig() 161 tmp_pte = ptep_get_and_clear(mm, addr, ptep); in get_clear_contig() 174 pte_t *ptep, in get_clear_contig_flush() argument 177 pte_t orig_pte = get_clear_contig(mm, addr, ptep, pte_num); in get_clear_contig_flush() [all …]
|
| /linux/arch/s390/include/asm/ |
| H A D | hugetlb.h | 22 pte_t *ptep, pte_t pte, unsigned long sz); 24 pte_t *ptep, pte_t pte); 27 pte_t huge_ptep_get(struct mm_struct *mm, unsigned long addr, pte_t *ptep); 30 pte_t *ptep); 34 unsigned long addr, pte_t *ptep, in huge_ptep_get_and_clear() argument 37 return __huge_ptep_get_and_clear(mm, addr, ptep); in huge_ptep_get_and_clear() 48 pte_t *ptep, unsigned long sz) in huge_pte_clear() argument 50 if ((pte_val(*ptep) & _REGION_ENTRY_TYPE_MASK) == _REGION_ENTRY_TYPE_R3) in huge_pte_clear() 51 set_pte(ptep, __pte(_REGION3_ENTRY_EMPTY)); in huge_pte_clear() 53 set_pte(ptep, __pte(_SEGMENT_ENTRY_EMPTY)); in huge_pte_clear() [all …]
|
| /linux/arch/arm64/include/asm/ |
| H A D | pgtable.h | 138 #define flush_tlb_fix_spurious_fault(vma, address, ptep) \ argument 182 #define __pte_clear(mm, addr, ptep) \ argument 183 __set_pte(ptep, __pte(0)) 401 static inline void __set_pte_nosync(pte_t *ptep, pte_t pte) in __set_pte_nosync() argument 403 WRITE_ONCE(*ptep, pte); in __set_pte_nosync() 416 static inline void __set_pte(pte_t *ptep, pte_t pte) in __set_pte() argument 418 __set_pte_nosync(ptep, pte); in __set_pte() 422 static inline pte_t __ptep_get(pte_t *ptep) in __ptep_get() argument 424 return READ_ONCE(*ptep); in __ptep_get() 446 static inline void __check_safe_pte_update(struct mm_struct *mm, pte_t *ptep, in __check_safe_pte_update() argument [all …]
|
| H A D | hugetlb.h | 39 pte_t *ptep, pte_t pte, unsigned long sz); 42 unsigned long addr, pte_t *ptep, 46 pte_t *ptep, unsigned long sz); 49 unsigned long addr, pte_t *ptep); 52 unsigned long addr, pte_t *ptep); 55 pte_t *ptep, unsigned long sz); 57 extern pte_t huge_ptep_get(struct mm_struct *mm, unsigned long addr, pte_t *ptep); 63 unsigned long addr, pte_t *ptep); 67 unsigned long addr, pte_t *ptep,
|
| /linux/include/linux/ |
| H A D | pgtable.h | 255 static inline unsigned int pte_batch_hint(pte_t *ptep, pte_t pte) in pte_batch_hint() argument 290 pte_t *ptep, pte_t pte, unsigned int nr) in set_ptes() argument 292 page_table_check_ptes_set(mm, ptep, pte, nr); in set_ptes() 295 set_pte(ptep, pte); in set_ptes() 298 ptep++; in set_ptes() 303 #define set_pte_at(mm, addr, ptep, pte) set_ptes(mm, addr, ptep, pte, 1) argument 307 unsigned long address, pte_t *ptep, 338 static inline pte_t ptep_get(pte_t *ptep) in ptep_get() argument 340 return READ_ONCE(*ptep); in ptep_get() 375 pte_t *ptep) in ptep_test_and_clear_young() argument [all …]
|
| /linux/include/asm-generic/ |
| H A D | hugetlb.h | 63 pte_t *ptep, unsigned long sz) in huge_pte_clear() argument 65 pte_clear(mm, addr, ptep); in huge_pte_clear() 71 pte_t *ptep, pte_t pte, unsigned long sz) in set_huge_pte_at() argument 73 set_pte_at(mm, addr, ptep, pte); in set_huge_pte_at() 79 unsigned long addr, pte_t *ptep, unsigned long sz) in huge_ptep_get_and_clear() argument 81 return ptep_get_and_clear(mm, addr, ptep); in huge_ptep_get_and_clear() 87 unsigned long addr, pte_t *ptep) in huge_ptep_clear_flush() argument 89 return ptep_clear_flush(vma, addr, ptep); in huge_ptep_clear_flush() 102 unsigned long addr, pte_t *ptep) in huge_ptep_set_wrprotect() argument 104 ptep_set_wrprotect(mm, addr, ptep); in huge_ptep_set_wrprotect() [all …]
|
| /linux/arch/parisc/mm/ |
| H A D | hugetlbpage.c | 102 pte_t *ptep, pte_t entry) in __set_huge_pte_at() argument 111 set_pte(ptep, entry); in __set_huge_pte_at() 112 ptep++; in __set_huge_pte_at() 122 pte_t *ptep, pte_t entry, unsigned long sz) in set_huge_pte_at() argument 124 __set_huge_pte_at(mm, addr, ptep, entry); in set_huge_pte_at() 129 pte_t *ptep, unsigned long sz) in huge_ptep_get_and_clear() argument 133 entry = *ptep; in huge_ptep_get_and_clear() 134 __set_huge_pte_at(mm, addr, ptep, __pte(0)); in huge_ptep_get_and_clear() 141 unsigned long addr, pte_t *ptep) in huge_ptep_set_wrprotect() argument 145 old_pte = *ptep; in huge_ptep_set_wrprotect() [all …]
|
| /linux/drivers/iommu/ |
| H A D | io-pgtable-arm.c | 154 #define iopte_set_writeable_clean(ptep) \ argument 155 set_bit(ARM_LPAE_PTE_AP_RDONLY_BIT, (unsigned long *)(ptep)) 316 static void __arm_lpae_sync_pte(arm_lpae_iopte *ptep, int num_entries, in __arm_lpae_sync_pte() argument 319 dma_sync_single_for_device(cfg->iommu_dev, __arm_lpae_dma_addr(ptep), in __arm_lpae_sync_pte() 320 sizeof(*ptep) * num_entries, DMA_TO_DEVICE); in __arm_lpae_sync_pte() 323 static void __arm_lpae_clear_pte(arm_lpae_iopte *ptep, struct io_pgtable_cfg *cfg, int num_entries) in __arm_lpae_clear_pte() argument 326 ptep[i] = 0; in __arm_lpae_clear_pte() 329 __arm_lpae_sync_pte(ptep, num_entries, cfg); in __arm_lpae_clear_pte() 335 int lvl, arm_lpae_iopte *ptep); 339 int lvl, int num_entries, arm_lpae_iopte *ptep) in __arm_lpae_init_pte() argument [all …]
|
| /linux/arch/powerpc/mm/ |
| H A D | pgtable.c | 192 void set_ptes(struct mm_struct *mm, unsigned long addr, pte_t *ptep, in set_ptes() argument 215 VM_WARN_ON(pte_hw_valid(*ptep) && !pte_protnone(*ptep)); in set_ptes() 218 __set_pte_at(mm, addr, ptep, pte, 0); in set_ptes() 221 ptep++; in set_ptes() 230 pte_t *ptep = pte_offset_kernel(pmdp, va); in unmap_kernel_page() local 232 pte_clear(&init_mm, va, ptep); in unmap_kernel_page() 244 pte_t *ptep, pte_t entry, int dirty) in ptep_set_access_flags() argument 248 changed = !pte_same(*(ptep), entry); in ptep_set_access_flags() 251 __ptep_set_access_flags(vma, ptep, entry, in ptep_set_access_flags() 259 unsigned long addr, pte_t *ptep, in huge_ptep_set_access_flags() argument [all …]
|
| H A D | pageattr.c | 19 static pte_basic_t pte_update_delta(pte_t *ptep, unsigned long addr, in pte_update_delta() argument 22 return pte_update(&init_mm, addr, ptep, old & ~new, new & ~old, 0); in pte_update_delta() 31 static int change_page_attr(pte_t *ptep, unsigned long addr, void *data) in change_page_attr() argument 40 pte_update_delta(ptep, addr, _PAGE_KERNEL_RW & ~_PAGE_DIRTY, _PAGE_KERNEL_RO); in change_page_attr() 44 pte_update_delta(ptep, addr, _PAGE_KERNEL_RW & ~_PAGE_DIRTY, _PAGE_KERNEL_ROX); in change_page_attr() 47 pte_update_delta(ptep, addr, _PAGE_KERNEL_RO, _PAGE_KERNEL_RW); in change_page_attr() 50 pte_update_delta(ptep, addr, _PAGE_KERNEL_ROX, _PAGE_KERNEL_RO); in change_page_attr() 53 pte_update_delta(ptep, addr, _PAGE_KERNEL_RO, _PAGE_KERNEL_ROX); in change_page_attr() 56 pte_update(&init_mm, addr, ptep, _PAGE_PRESENT, 0, 0); in change_page_attr() 59 pte_update(&init_mm, addr, ptep, 0, _PAGE_PRESENT, 0); in change_page_attr()
|
| /linux/arch/powerpc/include/asm/nohash/32/ |
| H A D | hugetlb-8xx.h | 19 void set_huge_pte_at(struct mm_struct *mm, unsigned long addr, pte_t *ptep, 23 static inline pte_t huge_ptep_get(struct mm_struct *mm, unsigned long addr, pte_t *ptep) in huge_ptep_get() argument 25 if (ptep_is_8m_pmdp(mm, addr, ptep)) in huge_ptep_get() 26 ptep = pte_offset_kernel((pmd_t *)ptep, ALIGN_DOWN(addr, SZ_8M)); in huge_ptep_get() 27 return ptep_get(ptep); in huge_ptep_get() 32 pte_t *ptep, unsigned long sz) in huge_pte_clear() argument 34 pte_update(mm, addr, ptep, ~0UL, 0, 1); in huge_pte_clear() 39 unsigned long addr, pte_t *ptep) in huge_ptep_set_wrprotect() argument 44 pte_update(mm, addr, ptep, clr, set, 1); in huge_ptep_set_wrprotect()
|
| H A D | pte-8xx.h | 122 static inline pte_basic_t pte_update(struct mm_struct *mm, unsigned long addr, pte_t *ptep, 125 static inline void ptep_set_wrprotect(struct mm_struct *mm, unsigned long addr, pte_t *ptep) in ptep_set_wrprotect() argument 127 pte_update(mm, addr, ptep, 0, _PAGE_RO, 0); in ptep_set_wrprotect() 131 static inline void __ptep_set_access_flags(struct vm_area_struct *vma, pte_t *ptep, in __ptep_set_access_flags() argument 138 pte_update(vma->vm_mm, address, ptep, clr, set, huge); in __ptep_set_access_flags() 170 static inline bool ptep_is_8m_pmdp(struct mm_struct *mm, unsigned long addr, pte_t *ptep) in ptep_is_8m_pmdp() argument 172 return (pmd_t *)ptep == pmd_off(mm, ALIGN_DOWN(addr, SZ_8M)); in ptep_is_8m_pmdp() 210 static inline pte_basic_t pte_update(struct mm_struct *mm, unsigned long addr, pte_t *ptep, in pte_update() argument 215 if (huge && ptep_is_8m_pmdp(mm, addr, ptep)) { in pte_update() 216 pmd_t *pmdp = (pmd_t *)ptep; in pte_update() [all …]
|
| /linux/tools/testing/selftests/kvm/lib/arm64/ |
| H A D | processor.c | 134 uint64_t *ptep; in _virt_pg_map() local 150 ptep = addr_gpa2hva(vm, vm->pgd) + pgd_index(vm, vaddr) * 8; in _virt_pg_map() 151 if (!*ptep) in _virt_pg_map() 152 *ptep = addr_pte(vm, vm_alloc_page_table(vm), in _virt_pg_map() 157 ptep = addr_gpa2hva(vm, pte_addr(vm, *ptep)) + pud_index(vm, vaddr) * 8; in _virt_pg_map() 158 if (!*ptep) in _virt_pg_map() 159 *ptep = addr_pte(vm, vm_alloc_page_table(vm), in _virt_pg_map() 163 ptep = addr_gpa2hva(vm, pte_addr(vm, *ptep)) + pmd_index(vm, vaddr) * 8; in _virt_pg_map() 164 if (!*ptep) in _virt_pg_map() 165 *ptep = addr_pte(vm, vm_alloc_page_table(vm), in _virt_pg_map() [all …]
|
| /linux/arch/powerpc/include/asm/book3s/64/ |
| H A D | hash.h | 162 pte_t *ptep, unsigned long pte, int huge); 165 static inline unsigned long hash__pte_update_one(pte_t *ptep, unsigned long clr, in hash__pte_update_one() argument 178 : "=&r" (old_be), "=&r" (tmp_be), "=m" (*ptep) in hash__pte_update_one() 179 : "r" (ptep), "r" (cpu_to_be64(clr)), "m" (*ptep), in hash__pte_update_one() 188 pte_t *ptep, unsigned long clr, in hash__pte_update() argument 194 old = hash__pte_update_one(ptep, clr, set); in hash__pte_update() 210 hash__pte_update_one(ptep + i, clr, set); in hash__pte_update() 217 hpte_need_flush(mm, addr, ptep, old, huge); in hash__pte_update() 225 static inline void hash__ptep_set_access_flags(pte_t *ptep, pte_t entry) in hash__ptep_set_access_flags() argument 241 :"=&r" (old), "=&r" (tmp), "=m" (*ptep) in hash__ptep_set_access_flags() [all …]
|
| H A D | radix.h | 146 extern void radix__ptep_set_access_flags(struct vm_area_struct *vma, pte_t *ptep, 151 unsigned long addr, pte_t *ptep, 154 static inline unsigned long __radix_pte_update(pte_t *ptep, unsigned long clr, in __radix_pte_update() argument 165 : "=&r" (old_be), "=&r" (tmp_be), "=m" (*ptep) in __radix_pte_update() 166 : "r" (ptep), "r" (cpu_to_be64(set)), "r" (cpu_to_be64(clr)) in __radix_pte_update() 174 pte_t *ptep, unsigned long clr, in radix__pte_update() argument 180 old_pte = __radix_pte_update(ptep, clr, set); in radix__pte_update() 189 pte_t *ptep, int full) in radix__ptep_get_and_clear_full() argument 194 old_pte = pte_val(*ptep); in radix__ptep_get_and_clear_full() 195 *ptep = __pte(0); in radix__ptep_get_and_clear_full() [all …]
|
| /linux/tools/testing/selftests/kvm/lib/loongarch/ |
| H A D | processor.c | 39 uint64_t *ptep; in virt_set_pgtable() local 42 ptep = addr_gpa2hva(vm, table); in virt_set_pgtable() 45 WRITE_ONCE(*(ptep + i), child); in virt_set_pgtable() 69 static int virt_pte_none(uint64_t *ptep, int level) in virt_pte_none() argument 71 return *ptep == invalid_pgtable[level]; in virt_pte_none() 77 uint64_t *ptep; in virt_populate_pte() local 86 ptep = addr_gpa2hva(vm, child) + virt_pte_index(vm, gva, level) * 8; in virt_populate_pte() 87 if (virt_pte_none(ptep, level)) { in virt_populate_pte() 91 WRITE_ONCE(*ptep, child); in virt_populate_pte() 96 child = pte_addr(vm, *ptep); in virt_populate_pte() [all …]
|
| /linux/arch/xtensa/include/asm/ |
| H A D | pgtable.h | 242 #define pte_clear(mm,addr,ptep) \ argument 243 do { update_pte(ptep, __pte(_PAGE_CA_INVALID | _PAGE_USER)); } while (0) 287 static inline void update_pte(pte_t *ptep, pte_t pteval) in update_pte() argument 289 *ptep = pteval; in update_pte() 291 __asm__ __volatile__ ("dhwb %0, 0" :: "a" (ptep)); in update_pte() 298 static inline void set_pte(pte_t *ptep, pte_t pte) in set_pte() argument 300 update_pte(ptep, pte); in set_pte() 313 pte_t *ptep) in ptep_test_and_clear_young() argument 315 pte_t pte = *ptep; in ptep_test_and_clear_young() 318 update_pte(ptep, pte_mkold(pte)); in ptep_test_and_clear_young() [all …]
|
| /linux/arch/mips/include/asm/ |
| H A D | pgtable.h | 119 static inline void set_pte(pte_t *ptep, pte_t pte) argument 121 ptep->pte_high = pte.pte_high; 123 ptep->pte_low = pte.pte_low; 130 pte_t *buddy = ptep_buddy(ptep); 143 static inline void pte_clear(struct mm_struct *mm, unsigned long addr, pte_t *ptep) argument 150 if (ptep_buddy(ptep)->pte_high & _PAGE_GLOBAL) 153 if (ptep_buddy(ptep)->pte_low & _PAGE_GLOBAL) 157 set_pte(ptep, null); 171 static inline void set_pte(pte_t *ptep, pte_t pteval) argument 173 *ptep = pteval; [all …]
|
| /linux/arch/powerpc/include/asm/nohash/ |
| H A D | pgtable.h | 103 unsigned long addr, pte_t *ptep) in ptep_test_and_clear_young() argument 107 old = pte_update(vma->vm_mm, addr, ptep, _PAGE_ACCESSED, 0, 0); in ptep_test_and_clear_young() 115 pte_t *ptep) in ptep_set_wrprotect() argument 117 pte_update(mm, addr, ptep, _PAGE_WRITE, 0, 0); in ptep_set_wrprotect() 123 pte_t *ptep) in ptep_get_and_clear() argument 125 return __pte(pte_update(mm, addr, ptep, ~0UL, 0, 0)); in ptep_get_and_clear() 129 static inline void pte_clear(struct mm_struct *mm, unsigned long addr, pte_t *ptep) in pte_clear() argument 131 pte_update(mm, addr, ptep, ~0UL, 0, 0); in pte_clear() 137 pte_t *ptep, pte_t entry, in __ptep_set_access_flags() argument 145 pte_update(vma->vm_mm, address, ptep, 0, set, huge); in __ptep_set_access_flags() [all …]
|
| /linux/arch/x86/xen/ |
| H A D | p2m.c | 210 pte_t *ptep; in xen_build_mfn_list_list() local 238 ptep = lookup_address((unsigned long)(xen_p2m_addr + pfn), in xen_build_mfn_list_list() 240 BUG_ON(!ptep || level != PG_LEVEL_4K); in xen_build_mfn_list_list() 241 mfn = pte_mfn(*ptep); in xen_build_mfn_list_list() 242 ptep = (pte_t *)((unsigned long)ptep & ~(PAGE_SIZE - 1)); in xen_build_mfn_list_list() 248 if (ptep == p2m_missing_pte || ptep == p2m_identity_pte) { in xen_build_mfn_list_list() 326 pte_t *ptep; in xen_rebuild_p2m_list() local 374 ptep = populate_extra_pte((unsigned long)(p2m + pfn)); in xen_rebuild_p2m_list() 375 set_pte(ptep, in xen_rebuild_p2m_list() 384 ptep = populate_extra_pte((unsigned long)(p2m + pfn)); in xen_rebuild_p2m_list() [all …]
|
| /linux/arch/powerpc/include/asm/book3s/32/ |
| H A D | pgtable.h | 216 #define pte_clear(mm, addr, ptep) \ argument 217 do { pte_update(mm, addr, ptep, ~_PAGE_HASHPTE, 0, 0); } while (0) 240 static inline void flush_hash_entry(struct mm_struct *mm, pte_t *ptep, unsigned long addr) in flush_hash_entry() argument 243 unsigned long ptephys = __pa(ptep) & PAGE_MASK; in flush_hash_entry() 302 unsigned long addr, pte_t *ptep) in __ptep_test_and_clear_young() argument 305 old = pte_update(mm, addr, ptep, _PAGE_ACCESSED, 0, 0); in __ptep_test_and_clear_young() 307 flush_hash_entry(mm, ptep, addr); in __ptep_test_and_clear_young() 316 pte_t *ptep) in ptep_get_and_clear() argument 318 return __pte(pte_update(mm, addr, ptep, ~_PAGE_HASHPTE, 0, 0)); in ptep_get_and_clear() 323 pte_t *ptep) in ptep_set_wrprotect() argument [all …]
|
| /linux/arch/powerpc/mm/book3s64/ |
| H A D | hash_64k.c | 39 pte_t *ptep, unsigned long trap, unsigned long flags, in __hash_page_4K() argument 54 pte_t pte = READ_ONCE(*ptep); in __hash_page_4K() 71 } while (!pte_xchg(ptep, __pte(old_pte), __pte(new_pte))); in __hash_page_4K() 91 rpte = __real_pte(__pte(old_pte), ptep, PTRS_PER_PTE); in __hash_page_4K() 131 *ptep = __pte(new_pte & ~H_PAGE_BUSY); in __hash_page_4K() 212 *ptep = __pte(old_pte); in __hash_page_4K() 218 new_pte |= pte_set_hidx(ptep, rpte, subpg_index, slot, PTRS_PER_PTE); in __hash_page_4K() 224 *ptep = __pte(new_pte & ~H_PAGE_BUSY); in __hash_page_4K() 229 unsigned long vsid, pte_t *ptep, unsigned long trap, in __hash_page_64K() argument 243 pte_t pte = READ_ONCE(*ptep); in __hash_page_64K() [all …]
|
| /linux/tools/testing/selftests/kvm/lib/riscv/ |
| H A D | processor.c | 84 uint64_t *ptep, next_ppn; in virt_arch_pg_map() local 101 ptep = addr_gpa2hva(vm, vm->pgd) + pte_index(vm, vaddr, level) * 8; in virt_arch_pg_map() 102 if (!*ptep) { in virt_arch_pg_map() 104 *ptep = (next_ppn << PGTBL_PTE_ADDR_SHIFT) | in virt_arch_pg_map() 110 ptep = addr_gpa2hva(vm, pte_addr(vm, *ptep)) + in virt_arch_pg_map() 112 if (!*ptep && level > 0) { in virt_arch_pg_map() 115 *ptep = (next_ppn << PGTBL_PTE_ADDR_SHIFT) | in virt_arch_pg_map() 122 *ptep = (paddr << PGTBL_PTE_ADDR_SHIFT) | in virt_arch_pg_map() 128 uint64_t *ptep; in addr_arch_gva2gpa() local 134 ptep = addr_gpa2hva(vm, vm->pgd) + pte_index(vm, gva, level) * 8; in addr_arch_gva2gpa() [all …]
|