Patchwork [02/12] kvm: set cpu_single_env around KVM_RUN ioctl

login
register
mail settings
Submitter Marcelo Tosatti
Date May 12, 2010, 9:24 p.m.
Message ID <273faf1b6dbdedd0fe9fc519ec73380eced667c2.1273699506.git.mtosatti@redhat.com>
Download mbox | patch
Permalink /patch/52423/
State New
Headers show

Comments

Marcelo Tosatti - May 12, 2010, 9:24 p.m.
Zero cpu_single_env before leaving global lock protection, and
restore on return.

Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
---
 kvm-all.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

Patch

diff --git a/kvm-all.c b/kvm-all.c
index 6962b2b..fbd084c 100644
--- a/kvm-all.c
+++ b/kvm-all.c
@@ -838,9 +838,11 @@  int kvm_cpu_exec(CPUState *env)
         }
 
         kvm_arch_pre_run(env, run);
+        cpu_single_env = NULL;
         qemu_mutex_unlock_iothread();
         ret = kvm_vcpu_ioctl(env, KVM_RUN, 0);
         qemu_mutex_lock_iothread();
+        cpu_single_env = env;
         kvm_arch_post_run(env, run);
 
         if (ret == -EINTR || ret == -EAGAIN) {