[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCHv20/6] trace: Per-vCPU tracing states
From: |
Lluís Vilanova |
Subject: |
[Qemu-devel] [PATCHv20/6] trace: Per-vCPU tracing states |
Date: |
Thu, 9 Jun 2016 19:34:18 +0200 |
User-agent: |
StGit/0.17.1-dirty |
NOTE: This series applies on top of "trace: Show vCPU info in guest code events"
Provides per-vCPU dynamic controls of the tracing state of events with the
"vcpu" property.
A later series proposes an optimization where tracing code can be elided for
dynamically disabled events (it uses multiple virtual TB caches optimized for
the current tracing state of the executing vCPU).
Changes in v2
=============
* Rebase on 9bbbf64.
* Fix removal of macro '_' in all target architectures.
* Document behaviour of 'trace_events_dstate'.
* Use a proper bitmap for CPUState::trace_dstate [Stefan Hajnoczi].
Changes in v1
=============
* Rebase on 1b16240.
* Split from v4 of "trace: Per-vCPU tracing states".
* Simplify event state initialization.
* Simplify logic deciding which events are treated by this patch (previously,
execution-time events with 'tcg' and 'vcpu' properties; now it's simply events
with the 'vcpu' property).
* Make tracing backends comply with the per-vCPU tracing state.
Signed-off-by: Lluís Vilanova <address@hidden>
---
Lluís Vilanova (6):
trace: Identify events with the 'vcpu' property
disas: Remove unused macro '_'
[trivial] trace: Cosmetic changes on fast-path tracing
trace: Add per-vCPU tracing states for events with the 'vcpu' property
trace: Conditionally trace events based on their per-vCPU state
trace: Add QAPI/QMP interfaces to query and control per-vCPU tracing state
Makefile.objs | 1
bsd-user/main.c | 2
disas/alpha.c | 6 +
disas/arm.c | 2
disas/i386.c | 2
disas/m68k.c | 4 -
disas/mips.c | 50 ++++++------
disas/ppc.c | 22 +++--
disas/sparc.c | 6 +
include/disas/bfd.h | 1
include/qom/cpu.h | 6 +
linux-user/main.c | 2
monitor.c | 4 -
qapi/trace.json | 20 ++++-
qmp-commands.hx | 18 ++++
qom/cpu.c | 1
scripts/tracetool/backend/dtrace.py | 4 -
scripts/tracetool/backend/ftrace.py | 20 ++---
scripts/tracetool/backend/log.py | 26 ++++--
scripts/tracetool/backend/simple.py | 13 ++-
scripts/tracetool/backend/ust.py | 4 -
scripts/tracetool/format/events_c.py | 11 ++-
scripts/tracetool/format/events_h.py | 12 +++
scripts/tracetool/format/h.py | 18 ++++
trace/Makefile.objs | 26 ++++++
trace/control-internal.h | 50 ++++++++++--
trace/control-stub.c | 29 +++++++
trace/control-target.c | 56 +++++++++++++
trace/control.c | 31 +++++++
trace/control.h | 78 ++++++++++++++++++-
trace/event-internal.h | 4 +
trace/qmp.c | 143 +++++++++++++++++++++++++++-------
translate-all.h | 3 +
vl.c | 1
34 files changed, 546 insertions(+), 130 deletions(-)
create mode 100644 trace/control-stub.c
create mode 100644 trace/control-target.c
To: address@hidden
Cc: Stefan Hajnoczi <address@hidden>
Cc: Eduardo Habkost <address@hidden>
Cc: Eric Blake <address@hidden>
- [Qemu-devel] [PATCHv20/6] trace: Per-vCPU tracing states,
Lluís Vilanova <=
- [Qemu-devel] [PATCH v2 1/6] trace: Identify events with the 'vcpu' property, Lluís Vilanova, 2016/06/09
- [Qemu-devel] [PATCH v2 3/6] [trivial] trace: Cosmetic changes on fast-path tracing, Lluís Vilanova, 2016/06/09
- [Qemu-devel] [PATCH v2 5/6] trace: Conditionally trace events based on their per-vCPU state, Lluís Vilanova, 2016/06/09
- [Qemu-devel] [PATCH v2 6/6] trace: Add QAPI/QMP interfaces to query and control per-vCPU tracing state, Lluís Vilanova, 2016/06/09
- [Qemu-devel] [PATCH v2 4/6] trace: Add per-vCPU tracing states for events with the 'vcpu' property, Lluís Vilanova, 2016/06/09
- [Qemu-devel] [PATCH v2 2/6] disas: Remove unused macro '_', Lluís Vilanova, 2016/06/09