]> err.no Git - linux-2.6/blobdiff - include/asm-x86/kvm.h
tg3: sparse cleanup
[linux-2.6] / include / asm-x86 / kvm.h
index 4837d759bec09ab49e5cba30c2af8b8597a75d7c..7a71120426a354155d377e3f7f952d92c4300862 100644 (file)
@@ -114,6 +114,21 @@ struct kvm_sregs {
        __u64 interrupt_bitmap[(KVM_NR_INTERRUPTS + 63) / 64];
 };
 
+/* for KVM_GET_FPU and KVM_SET_FPU */
+struct kvm_fpu {
+       __u8  fpr[8][16];
+       __u16 fcw;
+       __u16 fsw;
+       __u8  ftwx;  /* in fxsave format */
+       __u8  pad1;
+       __u16 last_opcode;
+       __u64 last_ip;
+       __u64 last_dp;
+       __u8  xmm[16][16];
+       __u32 mxcsr;
+       __u32 pad2;
+};
+
 struct kvm_msr_entry {
        __u32 index;
        __u32 reserved;
@@ -151,5 +166,26 @@ struct kvm_cpuid {
        struct kvm_cpuid_entry entries[0];
 };
 
+struct kvm_cpuid_entry2 {
+       __u32 function;
+       __u32 index;
+       __u32 flags;
+       __u32 eax;
+       __u32 ebx;
+       __u32 ecx;
+       __u32 edx;
+       __u32 padding[3];
+};
+
+#define KVM_CPUID_FLAG_SIGNIFCANT_INDEX 1
+#define KVM_CPUID_FLAG_STATEFUL_FUNC    2
+#define KVM_CPUID_FLAG_STATE_READ_NEXT  4
+
+/* for KVM_SET_CPUID2 */
+struct kvm_cpuid2 {
+       __u32 nent;
+       __u32 padding;
+       struct kvm_cpuid_entry2 entries[0];
+};
 
 #endif