From: Jan Kiszka <jan.kis...@siemens.com>

This is required to support keeping VCPU states across a system reset.
If we do not read the current state before the reset,
cpu_synchronize_all_post_reset may write back incorrect state
information.

The first user of this will be MCE MSR synchronization which currently
works around the missing cpu_synchronize_all_states.

Signed-off-by: Jan Kiszka <jan.kis...@siemens.com>
---

This must be applied before "Drop MCE MSRs write back restrictions" (I
don't want to resend the whole series for this).

 vl.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/vl.c b/vl.c
index 768dbf4..20e5dda 100644
--- a/vl.c
+++ b/vl.c
@@ -1422,6 +1422,7 @@ static void main_loop(void)
         }
         if (qemu_reset_requested()) {
             pause_all_vcpus();
+            cpu_synchronize_all_states();
             qemu_system_reset();
             resume_all_vcpus();
         }

Reply via email to