diff options
-rw-r--r-- | kvm-all.c | 8 | ||||
-rw-r--r-- | vl.c | 2 |
2 files changed, 8 insertions, 2 deletions
@@ -22,6 +22,7 @@ #include "qemu-common.h" #include "sysemu.h" +#include "hw/hw.h" #include "gdbstub.h" #include "kvm.h" @@ -376,6 +377,11 @@ int kvm_check_extension(KVMState *s, unsigned int extension) return ret; } +static void kvm_reset_vcpus(void *opaque) +{ + kvm_sync_vcpus(); +} + int kvm_init(int smp_cpus) { KVMState *s; @@ -462,6 +468,8 @@ int kvm_init(int smp_cpus) if (ret < 0) goto err; + qemu_register_reset(kvm_reset_vcpus, INT_MAX, NULL); + kvm_state = s; return 0; @@ -3659,8 +3659,6 @@ void qemu_system_reset(void) for(re = first_reset_entry; re != NULL; re = re->next) { re->func(re->opaque); } - if (kvm_enabled()) - kvm_sync_vcpus(); } void qemu_system_reset_request(void) |