summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/include/asm/kvm.h
diff options
context:
space:
mode:
authorAlexander Graf <agraf@suse.de>2009-11-30 04:02:02 +0100
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2009-12-08 06:02:50 +0100
commite15a113700324f7fdcee95589875daed2b98a2fe (patch)
treef2a528fb83219a748c86d0c03efd54c6980165ab /arch/powerpc/include/asm/kvm.h
parenthvc_console: Export (GPL'ed) hvc_remove (diff)
downloadlinux-e15a113700324f7fdcee95589875daed2b98a2fe.tar.xz
linux-e15a113700324f7fdcee95589875daed2b98a2fe.zip
powerpc/kvm: Sync guest visible MMU state
Currently userspace has no chance to find out which virtual address space we're in and resolve addresses. While that is a big problem for migration, it's also unpleasent when debugging, as gdb and the monitor don't work on virtual addresses. This patch exports enough of the MMU segment state to userspace to make debugging work and thus also includes the groundwork for migration. Signed-off-by: Alexander Graf <agraf@suse.de> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/include/asm/kvm.h')
-rw-r--r--arch/powerpc/include/asm/kvm.h18
1 files changed, 17 insertions, 1 deletions
diff --git a/arch/powerpc/include/asm/kvm.h b/arch/powerpc/include/asm/kvm.h
index c9ca97f43bc1..81f3b0b5601e 100644
--- a/arch/powerpc/include/asm/kvm.h
+++ b/arch/powerpc/include/asm/kvm.h
@@ -47,7 +47,23 @@ struct kvm_regs {
struct kvm_sregs {
__u32 pvr;
- char pad[1020];
+ union {
+ struct {
+ __u64 sdr1;
+ struct {
+ struct {
+ __u64 slbe;
+ __u64 slbv;
+ } slb[64];
+ } ppc64;
+ struct {
+ __u32 sr[16];
+ __u64 ibat[8];
+ __u64 dbat[8];
+ } ppc32;
+ } s;
+ __u8 pad[1020];
+ } u;
};
struct kvm_fpu {