diff --git a/cpus.c b/cpus.c index 8450ee4ff4d7b0bbe3db6f057294a32137ca6ecf..2bf87d2d5ea3e91366ba71fe2bc7f6c7c4580f0d 100644 --- a/cpus.c +++ b/cpus.c @@ -401,6 +401,7 @@ static void *kvm_cpu_thread_fn(void *arg) { 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 @@ static void *kvm_cpu_thread_fn(void *arg) kvm_block_io_signals(env); /* signal CPU creation */ - qemu_mutex_lock(&qemu_global_mutex); env->created = 1; qemu_cond_signal(&qemu_cpu_cond);