]>
Commit | Line | Data |
---|---|---|
1 | /* | |
2 | * Interface for configuring and controlling the state of tracing events. | |
3 | * | |
4 | * Copyright (C) 2014-2016 LluĂs Vilanova <vilanova@ac.upc.edu> | |
5 | * | |
6 | * This work is licensed under the terms of the GNU GPL, version 2 or later. | |
7 | * See the COPYING file in the top-level directory. | |
8 | */ | |
9 | ||
10 | #include "qemu/osdep.h" | |
11 | #include "trace/control.h" | |
12 | ||
13 | ||
14 | void trace_event_set_state_dynamic_init(TraceEvent *ev, bool state) | |
15 | { | |
16 | trace_event_set_state_dynamic(ev, state); | |
17 | } | |
18 | ||
19 | void trace_event_set_state_dynamic(TraceEvent *ev, bool state) | |
20 | { | |
21 | bool state_pre; | |
22 | assert(trace_event_get_state_static(ev)); | |
23 | ||
24 | /* | |
25 | * We ignore the "vcpu" property here, since there's no target code. Then | |
26 | * dstate can only be 1 or 0. | |
27 | */ | |
28 | state_pre = *(ev->dstate); | |
29 | if (state_pre != state) { | |
30 | if (state) { | |
31 | trace_events_enabled_count++; | |
32 | *(ev->dstate) = 1; | |
33 | } else { | |
34 | trace_events_enabled_count--; | |
35 | *(ev->dstate) = 0; | |
36 | } | |
37 | } | |
38 | } | |
39 | ||
40 | void trace_event_set_vcpu_state_dynamic(CPUState *vcpu, | |
41 | TraceEvent *ev, bool state) | |
42 | { | |
43 | /* should never be called on non-target binaries */ | |
44 | abort(); | |
45 | } | |
46 | ||
47 | void trace_init_vcpu(CPUState *vcpu) | |
48 | { | |
49 | /* should never be called on non-target binaries */ | |
50 | abort(); | |
51 | } |