aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/include
diff options
context:
space:
mode:
authorAlexander Graf <agraf@suse.de>2010-03-24 16:48:17 -0400
committerAvi Kivity <avi@redhat.com>2010-05-17 05:16:49 -0400
commit3eeafd7da2b0293b512abe95c86843fc4ab42add (patch)
treeccbf875d5c4c069156ed2244acca157b475e8c89 /arch/powerpc/include
parent8a5416db832895b84b85ad0bcbb11d1cce0d3d37 (diff)
KVM: PPC: Ensure split mode works
On PowerPC we can go into MMU Split Mode. That means that either data relocation is on but instruction relocation is off or vice versa. That mode didn't work properly, as we weren't always flushing entries when going into a new split mode, potentially mapping different code or data that we're supposed to. Signed-off-by: Alexander Graf <agraf@suse.de> Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch/powerpc/include')
-rw-r--r--arch/powerpc/include/asm/kvm_book3s.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/arch/powerpc/include/asm/kvm_book3s.h b/arch/powerpc/include/asm/kvm_book3s.h
index e6ea974df44e..14d0262ae00b 100644
--- a/arch/powerpc/include/asm/kvm_book3s.h
+++ b/arch/powerpc/include/asm/kvm_book3s.h
@@ -99,10 +99,11 @@ struct kvmppc_vcpu_book3s {
99#define CONTEXT_GUEST 1 99#define CONTEXT_GUEST 1
100#define CONTEXT_GUEST_END 2 100#define CONTEXT_GUEST_END 2
101 101
102#define VSID_REAL 0xfffffffffff00000 102#define VSID_REAL_DR 0x7ffffffffff00000
103#define VSID_REAL_DR 0xffffffffffe00000 103#define VSID_REAL_IR 0x7fffffffffe00000
104#define VSID_REAL_IR 0xffffffffffd00000 104#define VSID_SPLIT_MASK 0x7fffffffffe00000
105#define VSID_BAT 0xffffffffffc00000 105#define VSID_REAL 0x7fffffffffc00000
106#define VSID_BAT 0x7fffffffffb00000
106#define VSID_PR 0x8000000000000000 107#define VSID_PR 0x8000000000000000
107 108
108extern void kvmppc_mmu_pte_flush(struct kvm_vcpu *vcpu, u64 ea, u64 ea_mask); 109extern void kvmppc_mmu_pte_flush(struct kvm_vcpu *vcpu, u64 ea, u64 ea_mask);