diff options
author | Jan Kiszka <jan.kiszka@web.de> | 2009-06-27 09:24:58 +0200 |
---|---|---|
committer | Anthony Liguori <aliguori@us.ibm.com> | 2009-06-29 14:18:07 -0500 |
commit | 8d2ba1fb9c8e7006e10d71fa51a020977f14c8b0 (patch) | |
tree | fe229d578c3380d6b9e874337f06413a9a1160af /vl.c | |
parent | e9283f8b88eb6054ac032f3d9b773e80d842c0cf (diff) | |
download | qemu-8d2ba1fb9c8e7006e10d71fa51a020977f14c8b0.zip qemu-8d2ba1fb9c8e7006e10d71fa51a020977f14c8b0.tar.gz qemu-8d2ba1fb9c8e7006e10d71fa51a020977f14c8b0.tar.bz2 |
kvm: Rework VCPU synchronization
During startup and after reset we have to synchronize user space to the
in-kernel KVM state. Namely, we need to transfer the VCPU registers when
they change due to VCPU as well as APIC reset.
This patch refactors the required hooks so that kvm_init_vcpu registers
its own per-VCPU reset handler and adds a cpu_synchronize_state to the
APIC reset. That way we no longer depend on the new reset order (and can
drop this disliked interface again) and we can even drop a KVM hook in
main().
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Diffstat (limited to 'vl.c')
-rw-r--r-- | vl.c | 11 |
1 files changed, 0 insertions, 11 deletions
@@ -6057,17 +6057,6 @@ int main(int argc, char **argv, char **envp) current_machine = machine; - /* Set KVM's vcpu state to qemu's initial CPUState. */ - if (kvm_enabled()) { - int ret; - - ret = kvm_sync_vcpus(); - if (ret < 0) { - fprintf(stderr, "failed to initialize vcpus\n"); - exit(1); - } - } - /* init USB devices */ if (usb_enabled) { for(i = 0; i < usb_devices_index; i++) { |