Home
last modified time | relevance | path

Searched refs:pteg (Results 1 – 8 of 8) sorted by relevance

/openbmc/linux/arch/powerpc/kvm/
H A Dbook3s_32_mmu_host.c51 volatile u32 *pteg; in kvmppc_mmu_invalidate_pte() local
54 pteg = (u32*)pte->slot; in kvmppc_mmu_invalidate_pte()
55 pteg[0] = 0; in kvmppc_mmu_invalidate_pte()
110 ulong pteg = htab; in kvmppc_mmu_get_pteg() local
120 pteg |= hash; in kvmppc_mmu_get_pteg()
123 htab, hash, htabmask, pteg); in kvmppc_mmu_get_pteg()
125 return (u32*)pteg; in kvmppc_mmu_get_pteg()
137 volatile u32 *pteg; in kvmppc_mmu_map_page() local
176 pteg = kvmppc_mmu_get_pteg(vcpu, vsid, eaddr, primary); in kvmppc_mmu_map_page()
179 if (!evict && (pteg[rr] & PTE_V)) { in kvmppc_mmu_map_page()
[all …]
H A Dbook3s_pr_papr.c40 __be64 pteg[2 * 8]; in kvmppc_h_pr_enter() local
51 if (copy_from_user(pteg, (void __user *)pteg_addr, sizeof(pteg))) in kvmppc_h_pr_enter()
53 hpte = pteg; in kvmppc_h_pr_enter()
91 unsigned long v = 0, pteg, rb; in kvmppc_h_pr_remove() local
95 pteg = get_pteg_addr(vcpu, pte_index); in kvmppc_h_pr_remove()
98 if (copy_from_user(pte, (void __user *)pteg, sizeof(pte))) in kvmppc_h_pr_remove()
110 if (copy_to_user((void __user *)pteg, &v, sizeof(v))) in kvmppc_h_pr_remove()
155 unsigned long pteg, rb, flags; in kvmppc_h_pr_bulk_remove() local
178 pteg = get_pteg_addr(vcpu, tsh & H_BULK_REMOVE_PTEX); in kvmppc_h_pr_bulk_remove()
179 if (copy_from_user(pte, (void __user *)pteg, sizeof(pte))) { in kvmppc_h_pr_bulk_remove()
[all …]
H A Dbook3s_32_mmu.c98 u32 page, hash, pteg, htabmask; in kvmppc_mmu_book3s_32_get_pteg() local
109 pteg = (vcpu_book3s->sdr1 & 0xffff0000) | hash; in kvmppc_mmu_book3s_32_get_pteg()
112 kvmppc_get_pc(vcpu), eaddr, vcpu_book3s->sdr1, pteg, in kvmppc_mmu_book3s_32_get_pteg()
115 r = gfn_to_hva(vcpu->kvm, pteg >> PAGE_SHIFT); in kvmppc_mmu_book3s_32_get_pteg()
118 return r | (pteg & ~PAGE_MASK); in kvmppc_mmu_book3s_32_get_pteg()
188 u32 pteg[16]; in kvmppc_mmu_book3s_32_xlate_pte() local
209 if(copy_from_user(pteg, (void __user *)ptegp, sizeof(pteg))) { in kvmppc_mmu_book3s_32_xlate_pte()
216 pte0 = be32_to_cpu(pteg[i]); in kvmppc_mmu_book3s_32_xlate_pte()
217 pte1 = be32_to_cpu(pteg[i + 1]); in kvmppc_mmu_book3s_32_xlate_pte()
282 i, be32_to_cpu(pteg[i]), in kvmppc_mmu_book3s_32_xlate_pte()
[all …]
H A Dbook3s_64_mmu.c121 u64 hash, pteg, htabsize; in kvmppc_mmu_book3s_64_get_pteg() local
137 pteg = vcpu_book3s->sdr1 & 0xfffffffffffc0000ULL; in kvmppc_mmu_book3s_64_get_pteg()
138 pteg |= hash; in kvmppc_mmu_book3s_64_get_pteg()
141 page, vcpu_book3s->sdr1, pteg, slbe->vsid); in kvmppc_mmu_book3s_64_get_pteg()
146 r = pteg; in kvmppc_mmu_book3s_64_get_pteg()
148 r = gfn_to_hva(vcpu->kvm, pteg >> PAGE_SHIFT); in kvmppc_mmu_book3s_64_get_pteg()
152 return r | (pteg & ~PAGE_MASK); in kvmppc_mmu_book3s_64_get_pteg()
197 u64 pteg[16]; in kvmppc_mmu_book3s_64_xlate() local
251 if(copy_from_user(pteg, (void __user *)ptegp, sizeof(pteg))) { in kvmppc_mmu_book3s_64_xlate()
263 u64 pte0 = be64_to_cpu(pteg[i]); in kvmppc_mmu_book3s_64_xlate()
[all …]
H A Dbook3s_64_mmu_hv.c1238 unsigned long apsize, avpn, pteg, hash; in resize_hpt_rehash_hpte() local
1311 pteg = idx / HPTES_PER_GROUP; in resize_hpt_rehash_hpte()
1313 pteg = ~pteg; in resize_hpt_rehash_hpte()
1323 offset |= ((vsid ^ pteg) & old_hash_mask) << pshift; in resize_hpt_rehash_hpte()
1333 offset |= ((vsid ^ (vsid << 25) ^ pteg) & old_hash_mask) << pshift; in resize_hpt_rehash_hpte()
/openbmc/qemu/hw/ppc/
H A Dspapr_vhyp_mmu.c410 static uint64_t new_hpte_load0(void *htab, uint64_t pteg, int slot) in new_hpte_load0() argument
414 addr += pteg * HASH_PTEG_SIZE_64; in new_hpte_load0()
419 static void new_hpte_store(void *htab, uint64_t pteg, int slot, in new_hpte_store() argument
424 addr += pteg * HASH_PTEG_SIZE_64; in new_hpte_store()
435 uint64_t pteg, int slot) in rehash_hpte() argument
456 pteg = ~pteg; in rehash_hpte()
467 offset |= ((vsid ^ pteg) & old_hash_mask) << base_pg_shift; in rehash_hpte()
478 offset |= ((vsid ^ (vsid << 25) ^ pteg) & old_hash_mask) in rehash_hpte()
490 assert(~pteg == (hash & old_hash_mask)); in rehash_hpte()
493 assert(pteg == (hash & old_hash_mask)); in rehash_hpte()
[all …]
/openbmc/linux/arch/powerpc/mm/book3s64/
H A Dhash_native.c667 unsigned long avpn, pteg, vpi; in hpte_decode() local
691 pteg = slot / HPTES_PER_GROUP; in hpte_decode()
693 pteg = ~pteg; in hpte_decode()
702 vpi = (vsid ^ pteg) & htab_hash_mask; in hpte_decode()
712 vpi = (vsid ^ (vsid << 25) ^ pteg) & htab_hash_mask; in hpte_decode()
/openbmc/qemu/target/ppc/
H A Dmmu-hash64.c653 const ppc_hash_pte64_t *pteg; in ppc_hash64_pteg_search() local
658 pteg = ppc_hash64_map_hptes(cpu, ptex, HPTES_PER_GROUP); in ppc_hash64_pteg_search()
659 if (!pteg) { in ppc_hash64_pteg_search()
663 pte0 = ppc_hash64_hpte0(cpu, pteg, i); in ppc_hash64_pteg_search()
670 pte1 = ppc_hash64_hpte1(cpu, pteg, i); in ppc_hash64_pteg_search()
696 ppc_hash64_unmap_hptes(cpu, pteg, ptex, HPTES_PER_GROUP); in ppc_hash64_pteg_search()
700 ppc_hash64_unmap_hptes(cpu, pteg, ptex, HPTES_PER_GROUP); in ppc_hash64_pteg_search()