From: Marcelo Tosatti Date: Tue, 23 Mar 2010 16:37:13 +0000 (-0300) Subject: kvm_init_vcpu requires global lock held X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=6164e6d6e86e8f3f0b5ff7ae08b677026cb291c3;p=qemu.git kvm_init_vcpu requires global lock held Since it accesses data protected by the lock. Signed-off-by: Avi Kivity --- diff --git a/cpus.c b/cpus.c index 8450ee4ff4..2bf87d2d5e 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);