| /linux/arch/powerpc/include/asm/book3s/64/ |
| H A D | hash-64k.h | 94 real_pte_t rpte; in __real_pte() local 97 rpte.pte = pte; in __real_pte() 107 rpte.hidx = *hidxp; in __real_pte() 108 return rpte; in __real_pte() 123 static inline unsigned long __rpte_to_hidx(real_pte_t rpte, unsigned long index) in __rpte_to_hidx() argument 125 return HIDX_UNSHIFT_BY_ONE(BITS_TO_HIDX(rpte.hidx, index)); in __rpte_to_hidx() 132 static inline unsigned long pte_set_hidx(pte_t *ptep, real_pte_t rpte, in pte_set_hidx() argument 138 rpte.hidx &= ~HIDX_BITS(0xfUL, subpg_index); in pte_set_hidx() 139 *hidxp = rpte.hidx | HIDX_BITS(HIDX_SHIFT_BY_ONE(hidx), subpg_index); in pte_set_hidx() 153 extern bool __rpte_sub_valid(real_pte_t rpte, unsigned long index); [all …]
|
| H A D | hash-4k.h | 87 static inline unsigned long __rpte_to_hidx(real_pte_t rpte, unsigned long index) in __rpte_to_hidx() argument 89 return pte_val(__rpte_to_pte(rpte)) >> H_PAGE_F_GIX_SHIFT; in __rpte_to_hidx() 92 #define pte_iterate_hashed_subpages(rpte, psize, va, index, shift) \ argument 112 static inline unsigned long pte_set_hidx(pte_t *ptep, real_pte_t rpte, in pte_set_hidx() argument
|
| H A D | hash.h | 257 int ssize, real_pte_t rpte, unsigned int subpg_index);
|
| /linux/arch/powerpc/mm/book3s64/ |
| H A D | hash_64k.c | 33 bool __rpte_sub_valid(real_pte_t rpte, unsigned long index) in __rpte_sub_valid() argument 35 return !(hpte_soft_invalid(__rpte_to_hidx(rpte, index))); in __rpte_sub_valid() 42 real_pte_t rpte; in __hash_page_4K() local 91 rpte = __real_pte(__pte(old_pte), ptep, PTRS_PER_PTE); in __hash_page_4K() 102 flush_hash_page(vpn, rpte, MMU_PAGE_64K, ssize, flags); in __hash_page_4K() 115 if (__rpte_sub_valid(rpte, subpg_index)) { in __hash_page_4K() 118 gslot = pte_get_hash_gslot(vpn, shift, ssize, rpte, in __hash_page_4K() 142 rpte.hidx = INVALID_RPTE_HIDX; in __hash_page_4K() 218 new_pte |= pte_set_hidx(ptep, rpte, subpg_index, slot, PTRS_PER_PTE); in __hash_page_4K() 232 real_pte_t rpte; in __hash_page_64K() local [all …]
|
| H A D | hash_4k.c | 25 real_pte_t rpte; in __hash_page_4K() local 60 rpte = __real_pte(__pte(old_pte), ptep, PTRS_PER_PTE); in __hash_page_4K() 72 rpte, 0); in __hash_page_4K() 122 new_pte |= pte_set_hidx(ptep, rpte, 0, slot, PTRS_PER_PTE); in __hash_page_4K()
|
| H A D | hash_utils.c | 2187 int ssize, real_pte_t rpte, unsigned int subpg_index) in pte_get_hash_gslot() argument 2192 hidx = __rpte_to_hidx(rpte, subpg_index); in pte_get_hash_gslot()
|
| /linux/arch/powerpc/kvm/ |
| H A D | book3s_64_mmu_hv.c | 543 r = vcpu->arch.pgfault_cache->rpte; in kvmppc_book3s_hv_page_fault() 1206 unsigned long vpte, rpte, guest_rpte; in resize_hpt_rehash_hpte() local 1233 rpte = be64_to_cpu(hptep[1]); in resize_hpt_rehash_hpte() 1234 vpte = hpte_new_to_old_v(vpte, rpte); in resize_hpt_rehash_hpte() 1273 rpte = be64_to_cpu(hptep[1]); in resize_hpt_rehash_hpte() 1276 vpte = hpte_new_to_old_v(vpte, rpte); in resize_hpt_rehash_hpte() 1277 rpte = hpte_new_to_old_r(rpte); in resize_hpt_rehash_hpte() 1280 pshift = kvmppc_hpte_base_page_shift(vpte, rpte); in resize_hpt_rehash_hpte() 1337 rpte = hpte_old_to_new_r(vpte, rpte); in resize_hpt_rehash_hpte() 1341 new_hptep[1] = cpu_to_be64(rpte); in resize_hpt_rehash_hpte()
|
| H A D | book3s_64_mmu_radix.c | 150 __be64 rpte; in kvmppc_mmu_walk_radix_tree() local 177 addr = base + (index * sizeof(rpte)); in kvmppc_mmu_walk_radix_tree() 180 ret = kvm_read_guest(kvm, addr, &rpte, sizeof(rpte)); in kvmppc_mmu_walk_radix_tree() 187 pte = __be64_to_cpu(rpte); in kvmppc_mmu_walk_radix_tree()
|
| H A D | book3s_hv_rm_mmu.c | 1214 gr = cache_entry->rpte; in kvmppc_hpte_hv_fault() 1290 cache_entry->rpte = gr; in kvmppc_hpte_hv_fault()
|