summaryrefslogtreecommitdiffstats
path: root/scripts/tracetool/format/events_h.py
diff options
context:
space:
mode:
authorDaniel P. Berrange2016-10-04 15:35:49 +0200
committerStefan Hajnoczi2016-10-12 09:35:54 +0200
commitef4c9fc8542e06b1d567172c04b0c0377c7ab0c5 (patch)
treeb10d94d545215e19252f78ed332d948fd56ad58e /scripts/tracetool/format/events_h.py
parenttrace: give each trace event a named TraceEvent struct (diff)
downloadqemu-ef4c9fc8542e06b1d567172c04b0c0377c7ab0c5.tar.gz
qemu-ef4c9fc8542e06b1d567172c04b0c0377c7ab0c5.tar.xz
qemu-ef4c9fc8542e06b1d567172c04b0c0377c7ab0c5.zip
trace: remove the TraceEventID and TraceEventVCPUID enums
The TraceEventID and TraceEventVCPUID enums constants are no longer actually used for anything critical. The TRACE_EVENT_COUNT limit is used to determine the size of the TraceEvents array, and can be removed if we just NULL terminate the array instead. The TRACE_VCPU_EVENT_COUNT limit is used as a magic value for marking non-vCPU events, and also for declaring the size of the trace dstate mask in the CPUState struct. The former usage can be replaced by a dedicated constant TRACE_EVENT_VCPU_NONE, defined as (uint32_t)-1. For the latter usage, we can simply define a constant for the number of VCPUs, avoiding the need for the full enum. The only other usages of the enum values can be replaced by accesing the id/vcpu_id fields via the named TraceEvent structs. Reviewed-by: LluĂ­s Vilanova <vilanova@ac.upc.edu> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Daniel P. Berrange <berrange@redhat.com> Message-id: 1475588159-30598-11-git-send-email-berrange@redhat.com Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Diffstat (limited to 'scripts/tracetool/format/events_h.py')
-rw-r--r--scripts/tracetool/format/events_h.py19
1 files changed, 2 insertions, 17 deletions
diff --git a/scripts/tracetool/format/events_h.py b/scripts/tracetool/format/events_h.py
index 80a66c57d5..ca6d730519 100644
--- a/scripts/tracetool/format/events_h.py
+++ b/scripts/tracetool/format/events_h.py
@@ -29,27 +29,12 @@ def generate(events, backend):
out('extern TraceEvent %(event)s;',
event = e.api(e.QEMU_EVENT))
- # event identifiers
- out('typedef enum {')
-
- for e in events:
- out(' TRACE_%s,' % e.name.upper())
-
- out(' TRACE_EVENT_COUNT',
- '} TraceEventID;')
-
for e in events:
out('extern uint16_t %s;' % e.api(e.QEMU_DSTATE))
- # per-vCPU event identifiers
- out('typedef enum {')
-
- for e in events:
- if "vcpu" in e.properties:
- out(' TRACE_VCPU_%s,' % e.name.upper())
+ numvcpu = len([e for e in events if "vcpu" in e.properties])
- out(' TRACE_VCPU_EVENT_COUNT',
- '} TraceEventVCPUID;')
+ out("#define TRACE_VCPU_EVENT_COUNT %d" % numvcpu)
# static state
for e in events: