From 9c63296dcaf1d218ff1320a3af16f66de9dc8ca6 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Thu, 2 Aug 2012 13:38:49 +0200 Subject: [PATCH] --- yaml --- r: 343453 b: refs/heads/master c: 2bb890f5ee79c85b9d3b7df37ecb639d8d4b961e h: refs/heads/master i: 343451: 59604fb756884d5c3013a4d30a962c77273d1da5 v: v3 --- [refs] | 2 +- trunk/arch/powerpc/kvm/e500_tlb.c | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 8d5cd3ac86d0..096885e124de 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: cf1c5ca47319d9eb49166859921822fea354d4b3 +refs/heads/master: 2bb890f5ee79c85b9d3b7df37ecb639d8d4b961e diff --git a/trunk/arch/powerpc/kvm/e500_tlb.c b/trunk/arch/powerpc/kvm/e500_tlb.c index ff38b664195d..b56b6e14df6c 100644 --- a/trunk/arch/powerpc/kvm/e500_tlb.c +++ b/trunk/arch/powerpc/kvm/e500_tlb.c @@ -1039,8 +1039,12 @@ void kvmppc_mmu_map(struct kvm_vcpu *vcpu, u64 eaddr, gpa_t gpaddr, sesel = 0; /* unused */ priv = &vcpu_e500->gtlb_priv[tlbsel][esel]; - kvmppc_e500_setup_stlbe(vcpu, gtlbe, BOOK3E_PAGESZ_4K, - &priv->ref, eaddr, &stlbe); + /* Only triggers after clear_tlb_refs */ + if (unlikely(!(priv->ref.flags & E500_TLB_VALID))) + kvmppc_e500_tlb0_map(vcpu_e500, esel, &stlbe); + else + kvmppc_e500_setup_stlbe(vcpu, gtlbe, BOOK3E_PAGESZ_4K, + &priv->ref, eaddr, &stlbe); break; case 1: {