summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2016-08-21 23:16:12 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2016-09-14 12:25:14 +0200
commit7616f1c2da1c0f336a474a56ad6d32e15ccd666e (patch)
tree1b618dd42c0ee2d475168b8250c824b0a82beb8c
parentbb93e099888e8e7e959aa610ac783f41036bcc94 (diff)
downloadfocaccia-qemu-7616f1c2da1c0f336a474a56ad6d32e15ccd666e.tar.gz
focaccia-qemu-7616f1c2da1c0f336a474a56ad6d32e15ccd666e.zip
target-i386: fix ordering of fields in CPUX86State
Make sure reset zeroes TSC_AUX, XCR0, PKRU.  Move XSTATE_BV from the
"vmstate only" section to the "KVM only" section.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r--target-i386/cpu.h12
1 files changed, 6 insertions, 6 deletions
diff --git a/target-i386/cpu.h b/target-i386/cpu.h
index bb3ffda244..58e43b6f4b 100644
--- a/target-i386/cpu.h
+++ b/target-i386/cpu.h
@@ -1035,6 +1035,9 @@ typedef struct CPUX86State {
     uint64_t tsc;
     uint64_t tsc_adjust;
     uint64_t tsc_deadline;
+    uint64_t tsc_aux;
+
+    uint64_t xcr0;
 
     uint64_t mcg_status;
     uint64_t msr_ia32_misc_enable;
@@ -1051,6 +1054,8 @@ typedef struct CPUX86State {
     uint64_t pat;
     uint32_t smbase;
 
+    uint32_t pkru;
+
     /* End of state preserved by INIT (dummy marker).  */
     struct {} end_init_save;
 
@@ -1135,20 +1140,15 @@ typedef struct CPUX86State {
     uint64_t mcg_ctl;
     uint64_t mcg_ext_ctl;
     uint64_t mce_banks[MCE_BANKS_DEF*4];
-
-    uint64_t tsc_aux;
+    uint64_t xstate_bv;
 
     /* vmstate */
     uint16_t fpus_vmstate;
     uint16_t fptag_vmstate;
     uint16_t fpregs_format_vmstate;
-    uint64_t xstate_bv;
 
-    uint64_t xcr0;
     uint64_t xss;
 
-    uint32_t pkru;
-
     TPRAccess tpr_access_type;
 } CPUX86State;