aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/include
diff options
context:
space:
mode:
authorAlexander Graf <agraf@suse.de>2010-07-29 08:47:46 -0400
committerAvi Kivity <avi@redhat.com>2010-10-24 04:50:45 -0400
commitde7906c36ca1e22a3e3600e95c6a4e2c1e4e2e9c (patch)
treeb7cdfc56e7b9bc66e2a30bda5fb71f975b44de2e /arch/powerpc/include
parent5e030186dfc4e4e47c84d2557b17e4aa06c76f96 (diff)
KVM: PPC: Convert SRR0 and SRR1 to shared page
The SRR0 and SRR1 registers contain cached values of the PC and MSR respectively. They get written to by the hypervisor when an interrupt occurs or directly by the kernel. They are also used to tell the rfi(d) instruction where to jump to. Because it only gets touched on defined events that, it's very simple to share with the guest. Hypervisor and guest both have full r/w access. This patch converts all users of the current field to the shared page. 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_host.h2
-rw-r--r--arch/powerpc/include/asm/kvm_para.h2
2 files changed, 2 insertions, 2 deletions
diff --git a/arch/powerpc/include/asm/kvm_host.h b/arch/powerpc/include/asm/kvm_host.h
index c852408eac3..5255d754f9a 100644
--- a/arch/powerpc/include/asm/kvm_host.h
+++ b/arch/powerpc/include/asm/kvm_host.h
@@ -225,8 +225,6 @@ struct kvm_vcpu_arch {
225 ulong sprg5; 225 ulong sprg5;
226 ulong sprg6; 226 ulong sprg6;
227 ulong sprg7; 227 ulong sprg7;
228 ulong srr0;
229 ulong srr1;
230 ulong csrr0; 228 ulong csrr0;
231 ulong csrr1; 229 ulong csrr1;
232 ulong dsrr0; 230 ulong dsrr0;
diff --git a/arch/powerpc/include/asm/kvm_para.h b/arch/powerpc/include/asm/kvm_para.h
index ec72a1c8c04..d7fc6c2c973 100644
--- a/arch/powerpc/include/asm/kvm_para.h
+++ b/arch/powerpc/include/asm/kvm_para.h
@@ -23,6 +23,8 @@
23#include <linux/types.h> 23#include <linux/types.h>
24 24
25struct kvm_vcpu_arch_shared { 25struct kvm_vcpu_arch_shared {
26 __u64 srr0;
27 __u64 srr1;
26 __u64 dar; 28 __u64 dar;
27 __u64 msr; 29 __u64 msr;
28 __u32 dsisr; 30 __u32 dsisr;