aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kvm
diff options
context:
space:
mode:
authorLiu Yu <yu.liu@freescale.com>2009-01-14 11:47:38 -0500
committerAvi Kivity <avi@redhat.com>2009-03-24 05:03:05 -0400
commit9aa4dd5e5f47a5feb96fc394fccf0265ab7d85a4 (patch)
treef5c4183e9b7abcf5fe9b9a7e552915d4455ae84f /arch/powerpc/kvm
parentfb2838d446f6ee7e13e4149e08ec138753c5c450 (diff)
KVM: ppc: Move to new TLB invalidate interface
Commit 2a4aca1144394653269720ffbb5a325a77abd5fa removed old method _tlbia(). Signed-off-by: Liu Yu <yu.liu@freescale.com> Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com> Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch/powerpc/kvm')
-rw-r--r--arch/powerpc/kvm/e500_tlb.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/arch/powerpc/kvm/e500_tlb.c b/arch/powerpc/kvm/e500_tlb.c
index e3daf57b5f5e..d437160d388c 100644
--- a/arch/powerpc/kvm/e500_tlb.c
+++ b/arch/powerpc/kvm/e500_tlb.c
@@ -20,6 +20,7 @@
20#include <asm/kvm_ppc.h> 20#include <asm/kvm_ppc.h>
21#include <asm/kvm_e500.h> 21#include <asm/kvm_e500.h>
22 22
23#include "../mm/mmu_decl.h"
23#include "e500_tlb.h" 24#include "e500_tlb.h"
24 25
25#define to_htlb1_esel(esel) (tlb1_entry_num - (esel) - 1) 26#define to_htlb1_esel(esel) (tlb1_entry_num - (esel) - 1)
@@ -158,7 +159,7 @@ void kvmppc_e500_tlb_load(struct kvm_vcpu *vcpu, int cpu)
158 159
159void kvmppc_e500_tlb_put(struct kvm_vcpu *vcpu) 160void kvmppc_e500_tlb_put(struct kvm_vcpu *vcpu)
160{ 161{
161 _tlbia(); 162 _tlbil_all();
162} 163}
163 164
164/* Search the guest TLB for a matching entry. */ 165/* Search the guest TLB for a matching entry. */
@@ -362,11 +363,10 @@ void kvmppc_mmu_priv_switch(struct kvm_vcpu *vcpu, int usermode)
362 int i; 363 int i;
363 364
364 /* XXX Replace loop with fancy data structures. */ 365 /* XXX Replace loop with fancy data structures. */
365 /* needn't set modified since tlbia will make TLB1 coherent */
366 for (i = 0; i < tlb1_max_shadow_size(); i++) 366 for (i = 0; i < tlb1_max_shadow_size(); i++)
367 kvmppc_e500_stlbe_invalidate(vcpu_e500, 1, i); 367 kvmppc_e500_stlbe_invalidate(vcpu_e500, 1, i);
368 368
369 _tlbia(); 369 _tlbil_all();
370 } 370 }
371} 371}
372 372
@@ -417,7 +417,7 @@ int kvmppc_e500_emul_tlbivax(struct kvm_vcpu *vcpu, int ra, int rb)
417 kvmppc_e500_gtlbe_invalidate(vcpu_e500, tlbsel, esel); 417 kvmppc_e500_gtlbe_invalidate(vcpu_e500, tlbsel, esel);
418 } 418 }
419 419
420 _tlbia(); 420 _tlbil_all();
421 421
422 return EMULATE_DONE; 422 return EMULATE_DONE;
423} 423}
@@ -604,7 +604,7 @@ void kvmppc_mmu_destroy(struct kvm_vcpu *vcpu)
604 kvmppc_e500_shadow_release(vcpu_e500, tlbsel, i); 604 kvmppc_e500_shadow_release(vcpu_e500, tlbsel, i);
605 605
606 /* discard all guest mapping */ 606 /* discard all guest mapping */
607 _tlbia(); 607 _tlbil_all();
608} 608}
609 609
610void kvmppc_mmu_map(struct kvm_vcpu *vcpu, u64 eaddr, gpa_t gpaddr, 610void kvmppc_mmu_map(struct kvm_vcpu *vcpu, u64 eaddr, gpa_t gpaddr,