kvm_init_vcpu requires global lock held
Since it accesses data protected by the lock.
Signed-off-by: Avi Kivity <avi@redhat.com>
diff --git a/cpus.c b/cpus.c
index 8450ee4..2bf87d2 100644
--- a/cpus.c
+++ b/cpus.c
@@ -401,6 +401,7 @@
{
CPUState *env = arg;
+ qemu_mutex_lock(&qemu_global_mutex);
qemu_thread_self(env->thread);
if (kvm_enabled())
kvm_init_vcpu(env);
@@ -408,7 +409,6 @@
kvm_block_io_signals(env);
/* signal CPU creation */
- qemu_mutex_lock(&qemu_global_mutex);
env->created = 1;
qemu_cond_signal(&qemu_cpu_cond);