Commit d33a1810 authored by Jan Kiszka's avatar Jan Kiszka Committed by Anthony Liguori
Browse files

kvm: Rework VCPU reset



Use standard callback with highest order to synchronize VCPU on reset
after all device callbacks were execute. This allows to remove the
special kvm hook in qemu_system_reset.
Signed-off-by: default avatarJan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
parent 8217606e
......@@ -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)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment