]> xenbits.xensource.com Git - people/sstabellini/qemu-dm.git/.git/commitdiff
kvm: Switch kvm_update_guest_debug to run_on_cpu
authorJan Kiszka <jan.kiszka@siemens.com>
Wed, 19 May 2010 22:28:45 +0000 (00:28 +0200)
committerMarcelo Tosatti <mtosatti@redhat.com>
Mon, 28 Jun 2010 16:06:03 +0000 (13:06 -0300)
Guest debugging under KVM is currently broken once io-threads are
enabled. Easily fixable by switching the fake on_vcpu to the real
run_on_cpu implementation.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
kvm-all.c

index c238f5421cded1bd5b1ba318f72f51c13d20789a..5684e515ab6abd7b9f64b0816e81d573e09b9ee0 100644 (file)
--- a/kvm-all.c
+++ b/kvm-all.c
@@ -1033,16 +1033,6 @@ void kvm_setup_guest_memory(void *start, size_t size)
 }
 
 #ifdef KVM_CAP_SET_GUEST_DEBUG
-static void on_vcpu(CPUState *env, void (*func)(void *data), void *data)
-{
-#ifdef CONFIG_IOTHREAD
-    if (env != cpu_single_env) {
-        abort();
-    }
-#endif
-    func(data);
-}
-
 struct kvm_sw_breakpoint *kvm_find_sw_breakpoint(CPUState *env,
                                                  target_ulong pc)
 {
@@ -1086,7 +1076,7 @@ int kvm_update_guest_debug(CPUState *env, unsigned long reinject_trap)
     kvm_arch_update_guest_debug(env, &data.dbg);
     data.env = env;
 
-    on_vcpu(env, kvm_invoke_set_guest_debug, &data);
+    run_on_cpu(env, kvm_invoke_set_guest_debug, &data);
     return data.err;
 }