From patchwork Mon Apr 26 17:59:01 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [05/10] kvm_init_vcpu requires global lock held Date: Mon, 26 Apr 2010 07:59:01 -0000 From: Marcelo Tosatti X-Patchwork-Id: 50991 Message-Id: <6164e6d6e86e8f3f0b5ff7ae08b677026cb291c3.1272304746.git.mtosatti@redhat.com> To: Anthony Liguori Cc: Marcelo Tosatti , qemu-devel@nongnu.org, kvm@vger.kernel.org, Avi Kivity Since it accesses data protected by the lock. Signed-off-by: Avi Kivity --- cpus.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/cpus.c b/cpus.c index 8450ee4..2bf87d2 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);