qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH v9 0/7] trace: Per-vCPU tracing states


From: Lluís Vilanova
Subject: [Qemu-devel] [PATCH v9 0/7] trace: Per-vCPU tracing states
Date: Mon, 11 Jul 2016 12:53:19 +0200
User-agent: StGit/0.17.1-dirty

NOTE: This series applies on top of "trace: [*-user] Add commandline arguments
      to control tracing".

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 v9
=============

* Clarify that "vcpu" property can be on any of the "trace-events" files
  [Eric Blake].


Changes in v8
=============

* Fix detection of negative vCPU values in HMP [Markus Armbruster].


Changes in v7
=============

* Fix typo in commit message.


Changes in v6
=============

* Rebase on 6f1d2d1.
* Add missing include in "scripts/tracetool/format/h.py".


Changes in v5
=============

* Fix 'trace_event_is_vcpu()'.
* Move stub code into the "stubs/" directory [Stefan Hajnoczi].
* Improve docs on QAPI and QMP commands [Markus Armbruster].
* Rewrite 'get_cpu()' to be more in line with use of QEMU's Error objects
  [Markus Armbruster].
* Add "name" argument to HMP command "info trace-events".
* Add "vcpu" argument to HMP commands [Markus Armbruster].


Changes in v4
=============

* Make trace_events_dstate an uint16_t [Paolo Bonzini].
* Revert trace_event_get_state_dynamic_by_id [Stefan Hajnoczi].
* Do not add superfluous asserts [Paolo Bonzini].
* Replace cpu -> vcpu in function names and arguments [Paolo Bonzini].
* Add 'trace_event_is_vcpu' [Paolo Bonzini].
* Remove 'trace_event_cpu_count' [Paolo Bonzini].


Changes in v3
=============

* Update QAPI version annotations [Eric Blake].


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 (7):
      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: Allow event name pattern in "info trace-events"
      trace: Add QAPI/QMP interfaces to query and control per-vCPU tracing state


 bsd-user/main.c                      |    1 
 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 +
 hmp-commands-info.hx                 |    8 +-
 hmp-commands.hx                      |    7 +-
 hmp.h                                |    1 
 include/disas/bfd.h                  |    1 
 include/qom/cpu.h                    |    6 +
 linux-user/main.c                    |    1 
 monitor.c                            |   46 ++++++++++-
 qapi/trace.json                      |   33 +++++++-
 qmp-commands.hx                      |   35 ++++++++
 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        |   19 ++++
 stubs/Makefile.objs                  |    1 
 stubs/trace-control.c                |   28 ++++++
 trace/Makefile.objs                  |    4 +
 trace/control-internal.h             |   47 +++++++++--
 trace/control-target.c               |   53 ++++++++++++
 trace/control.c                      |   29 ++++++-
 trace/control.h                      |   78 ++++++++++++++++++
 trace/event-internal.h               |    4 +
 trace/qmp.c                          |  148 +++++++++++++++++++++++++++-------
 translate-all.h                      |    3 +
 vl.c                                 |    1 
 37 files changed, 601 insertions(+), 136 deletions(-)
 create mode 100644 stubs/trace-control.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>
Cc: Paolo Bonzini <address@hidden>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]