From: Scott Wood Date: Thu, 18 Aug 2011 20:25:23 +0000 (-0500) Subject: KVM: PPC: e500: tlbsx: fix tlb0 esel X-Git-Tag: v3.4-rc1~59^2~104 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=303b7c97e369ec3d7ab7ba0551030160ce3f838a;p=~emulex%2Finfiniband.git KVM: PPC: e500: tlbsx: fix tlb0 esel It should contain the way, not the absolute TLB0 index. Signed-off-by: Scott Wood Signed-off-by: Alexander Graf Signed-off-by: Avi Kivity --- diff --git a/arch/powerpc/kvm/e500_tlb.c b/arch/powerpc/kvm/e500_tlb.c index f19ae2f6152..ec17148392b 100644 --- a/arch/powerpc/kvm/e500_tlb.c +++ b/arch/powerpc/kvm/e500_tlb.c @@ -853,6 +853,8 @@ int kvmppc_e500_emul_tlbsx(struct kvm_vcpu *vcpu, int rb) } if (gtlbe) { + esel &= vcpu_e500->gtlb_params[tlbsel].ways - 1; + vcpu_e500->mas0 = MAS0_TLBSEL(tlbsel) | MAS0_ESEL(esel) | MAS0_NV(vcpu_e500->gtlb_nv[tlbsel]); vcpu_e500->mas1 = gtlbe->mas1;