]> git.proxmox.com Git - mirror_qemu.git/blobdiff - stubs/trace-control.c
trace: remove code that depends on setting vcpu
[mirror_qemu.git] / stubs / trace-control.c
index fe59836fce4d78f567dbd386f2ffcb31ff139a6d..b428f34c87881eb5af2f45be89e9a90e59b75d18 100644 (file)
 #include "trace/control.h"
 
 
-void trace_event_set_state_dynamic(TraceEvent *ev, bool state)
+void trace_event_set_state_dynamic_init(TraceEvent *ev, bool state)
 {
-    TraceEventID id;
-    assert(trace_event_get_state_static(ev));
-    id = trace_event_get_id(ev);
-    trace_events_enabled_count += state - trace_events_dstate[id];
-    trace_events_dstate[id] = state;
+    trace_event_set_state_dynamic(ev, state);
 }
 
-void trace_event_set_vcpu_state_dynamic(CPUState *vcpu,
-                                        TraceEvent *ev, bool state)
+void trace_event_set_state_dynamic(TraceEvent *ev, bool state)
 {
-    /* should never be called on non-target binaries */
-    abort();
+    bool state_pre;
+    assert(trace_event_get_state_static(ev));
+
+    /*
+     * We ignore the "vcpu" property here, since there's no target code. Then
+     * dstate can only be 1 or 0.
+     */
+    state_pre = *(ev->dstate);
+    if (state_pre != state) {
+        if (state) {
+            trace_events_enabled_count++;
+            *(ev->dstate) = 1;
+        } else {
+            trace_events_enabled_count--;
+            *(ev->dstate) = 0;
+        }
+    }
 }