/kernel/linux/linux-5.10/arch/powerpc/kvm/ |
H A D | book3s_32_mmu_host.c | 51 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() 122 dprintk_mmu("htab: %lx | hash: %x | htabmask: %x | pteg: %lx\n", 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 in kvmppc_mmu_map_page() [all...] |
H A D | book3s_pr_papr.c | 40 __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 in kvmppc_h_pr_bulk_remove() 219 unsigned long rb, pteg, r, v; kvmppc_h_pr_protect() local [all...] |
H A D | book3s_32_mmu.c | 98 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() 111 dprintk("MMU: pc=0x%lx eaddr=0x%lx sdr1=0x%llx pteg=0x%x vsid=0x%x\n", 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[ in kvmppc_mmu_book3s_32_xlate_pte() [all...] |
H A D | book3s_64_mmu.c | 121 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() 140 dprintk("MMU: page=0x%x sdr1=0x%llx pteg=0x%llx vsid=0x%llx\n", 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, (voi in kvmppc_mmu_book3s_64_xlate() [all...] |
H A D | book3s_64_mmu_hv.c | 1240 unsigned long apsize, avpn, pteg, hash; in resize_hpt_rehash_hpte() local 1313 pteg = idx / HPTES_PER_GROUP; in resize_hpt_rehash_hpte() 1315 pteg = ~pteg; in resize_hpt_rehash_hpte() 1323 /* We can find more bits from the pteg value */ in resize_hpt_rehash_hpte() 1325 offset |= ((vsid ^ pteg) & old_hash_mask) << pshift; in resize_hpt_rehash_hpte() 1335 offset |= ((vsid ^ (vsid << 25) ^ pteg) & old_hash_mask) << pshift; in resize_hpt_rehash_hpte()
|
/kernel/linux/linux-6.6/arch/powerpc/kvm/ |
H A D | book3s_32_mmu_host.c | 51 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() 122 dprintk_mmu("htab: %lx | hash: %x | htabmask: %x | pteg: %lx\n", 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 in kvmppc_mmu_map_page() [all...] |
H A D | book3s_pr_papr.c | 40 __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 in kvmppc_h_pr_bulk_remove() 219 unsigned long rb, pteg, r, v; kvmppc_h_pr_protect() local [all...] |
H A D | book3s_32_mmu.c | 98 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() 111 dprintk("MMU: pc=0x%lx eaddr=0x%lx sdr1=0x%llx pteg=0x%x vsid=0x%x\n", 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[ in kvmppc_mmu_book3s_32_xlate_pte() [all...] |
H A D | book3s_64_mmu.c | 121 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() 140 dprintk("MMU: page=0x%x sdr1=0x%llx pteg=0x%llx vsid=0x%llx\n", 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, (voi in kvmppc_mmu_book3s_64_xlate() [all...] |
H A D | book3s_64_mmu_hv.c | 1238 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() 1321 /* We can find more bits from the pteg value */ 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()
|
/kernel/linux/linux-5.10/arch/powerpc/mm/book3s64/ |
H A D | hash_native.c | 717 unsigned long avpn, pteg, vpi; in hpte_decode() local 741 pteg = slot / HPTES_PER_GROUP; in hpte_decode() 743 pteg = ~pteg; in hpte_decode() 750 /* We can find more bits from the pteg value */ in hpte_decode() 752 vpi = (vsid ^ pteg) & htab_hash_mask; in hpte_decode() 762 vpi = (vsid ^ (vsid << 25) ^ pteg) & htab_hash_mask; in hpte_decode()
|
/kernel/linux/linux-6.6/arch/powerpc/mm/book3s64/ |
H A D | hash_native.c | 667 unsigned long avpn, pteg, vpi; in hpte_decode() local 691 pteg = slot / HPTES_PER_GROUP; in hpte_decode() 693 pteg = ~pteg; in hpte_decode() 700 /* We can find more bits from the pteg value */ 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()
|