KVM: ia64: expose registers in struct kvm_regs
authorJes Sorensen <jes@sgi.com>
Thu, 8 Jan 2009 12:58:48 +0000 (13:58 +0100)
committerAvi Kivity <avi@redhat.com>
Tue, 24 Mar 2009 09:03:03 +0000 (11:03 +0200)
Provide register layout for struct kvm_regs exposed to userland.

Signed-off-by: Jes Sorensen <jes@sgi.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
arch/ia64/include/asm/kvm.h

index b5145784233e90ded7e1be1032bfe9eb438a6674..0ee5bd7a988f101c85c3f839b7f1fcc3ae57be53 100644 (file)
@@ -166,7 +166,40 @@ struct saved_vpd {
        unsigned long  vcpuid[5];
        unsigned long  vpsr;
        unsigned long  vpr;
        unsigned long  vcpuid[5];
        unsigned long  vpsr;
        unsigned long  vpr;
-       unsigned long  vcr[128];
+       union {
+               unsigned long  vcr[128];
+               struct {
+                       unsigned long dcr;
+                       unsigned long itm;
+                       unsigned long iva;
+                       unsigned long rsv1[5];
+                       unsigned long pta;
+                       unsigned long rsv2[7];
+                       unsigned long ipsr;
+                       unsigned long isr;
+                       unsigned long rsv3;
+                       unsigned long iip;
+                       unsigned long ifa;
+                       unsigned long itir;
+                       unsigned long iipa;
+                       unsigned long ifs;
+                       unsigned long iim;
+                       unsigned long iha;
+                       unsigned long rsv4[38];
+                       unsigned long lid;
+                       unsigned long ivr;
+                       unsigned long tpr;
+                       unsigned long eoi;
+                       unsigned long irr[4];
+                       unsigned long itv;
+                       unsigned long pmv;
+                       unsigned long cmcv;
+                       unsigned long rsv5[5];
+                       unsigned long lrr0;
+                       unsigned long lrr1;
+                       unsigned long rsv6[46];
+               };
+       };
 };
 
 struct kvm_regs {
 };
 
 struct kvm_regs {