First version that actually works. Only qxl covered for this RfC,
other modules will follow once the basics are hashed out.
v4:
- rebase to latest master.
- fix systemtap tracing.
- also cover virtio-gpu modules.
- pick up some review tags.
- misc minor tweaks.
v3:
- handle initialization of modular tracepoints.
TODO:
Enabling modular tracepoints via -trace cmd line doesn't work yet.
Guess we need to store the list somewhere for later re-processing.
Error handling is tricky, specifically the "tracepoint doesn't exist"
error. Suggestions / ideas are welcome.
More context:
https://bugzilla.redhat.com/show_bug.cgi?id=1898700
https://bugzilla.redhat.com/show_bug.cgi?id=1869642
take care,
Gerd
Gerd Hoffmann (13):
qemu-trace-stap: changing SYSTEMTAP_TAPSET considered harmful.
trace: iter init tweaks
trace: add trace_event_iter_init_group
trace/simple: pass iter to st_write_event_mapping
trace/simple: add st_init_group
meson: add trace_events_config[]
meson: move up hw subdir (specifically before trace subdir)
meson: add module_trace & module_trace_src
trace/stap: build stap files for modules
meson: move qxl trace events to separate file
virtio-gpu: split trace points
meson: move virtio trace events to separate file
meson: move virtio-gl trace events to separate file
hw/display/trace-qxl.h | 1 +
hw/display/trace-virtio-gl.h | 1 +
hw/display/trace-virtio.h | 1 +
trace/control.h | 30 ++++++++--
trace/simple.h | 1 +
hw/display/qxl-render.c | 2 +-
hw/display/qxl.c | 2 +-
hw/display/virtio-gpu-base.c | 2 +-
hw/display/virtio-gpu-virgl.c | 50 ++++++++--------
hw/display/virtio-gpu.c | 2 +-
monitor/misc.c | 4 +-
trace/control-target.c | 2 +-
trace/control.c | 39 ++++++++++---
trace/qmp.c | 6 +-
trace/simple.c | 22 +++++--
hw/display/meson.build | 12 ++++
hw/display/trace-events | 95 -------------------------------
hw/display/trace-events-qxl | 66 +++++++++++++++++++++
hw/display/trace-events-virtio | 16 ++++++
hw/display/trace-events-virtio-gl | 18 ++++++
meson.build | 43 +++++++++++++-
scripts/qemu-trace-stap | 14 ++---
trace/meson.build | 36 +++++++++---
23 files changed, 298 insertions(+), 167 deletions(-)
create mode 100644 hw/display/trace-qxl.h
create mode 100644 hw/display/trace-virtio-gl.h
create mode 100644 hw/display/trace-virtio.h
create mode 100644 hw/display/trace-events-qxl
create mode 100644 hw/display/trace-events-virtio
create mode 100644 hw/display/trace-events-virtio-gl
--
2.31.1