Lines Matching +full:can +full:- +full:disable
19 $ qemu --trace "memory_region_ops_*" ...
25 ``./configure --enable-trace-backends=BACKENDS`` was not explicitly specified.
27 Multiple patterns can be specified by repeating the ``--trace`` option::
29 $ qemu --trace "kvm_*" --trace "virtio_*" ...
32 file to avoid long command-line options::
36 $ qemu --trace events=/tmp/events ...
41 Sub-directory setup
42 -------------------
44 Each directory in the source tree can declare a set of trace events in a local
45 "trace-events" file. All directories which contain "trace-events" files must be
47 file. During build, the "trace-events" file in each listed subdirectory will be
50 The individual "trace-events" files are merged into a "trace-events-all" file,
58 - trace-<subdir>.c - the trace event state declarations
59 - trace-<subdir>.h - the trace event enums and probe functions
60 - trace-dtrace-<subdir>.h - DTrace event probe specification
61 - trace-dtrace-<subdir>.dtrace - DTrace event probe helper declaration
62 - trace-dtrace-<subdir>.o - binary DTrace provider (generated by dtrace)
63 - trace-ust-<subdir>.h - UST event probe helper declarations
65 Here <subdir> is the sub-directory path with '/' replaced by '_'. For example,
66 "accel/kvm" becomes "accel_kvm" and the final filename for "trace-<subdir>.c"
67 becomes "trace-accel_kvm.c".
71 any sub-directory path prefix. eg io/channel-buffer.c would do::
76 corresponding "trace/trace-<subdir>.h" file that will be generated in the
79 $ echo '#include "trace/trace-io.h"' >io/trace.h
82 sub-directory, this is discouraged in general. It is strongly preferred that
83 all events be declared directly in the sub-directory that uses them. The only
85 directory trace-events file. The top level directory generates trace files
86 with a filename prefix of "trace/trace-root" instead of just "trace". This is
91 ------------------
111 ----------------------
120 * Use stdint.h types for fixed-size types. Most offsets and guest memory
121 addresses are best represented with uint32_t or uint64_t. Use fixed-size
123 (32-bit versus 64-bit) so trace events don't truncate values or break
127 cannot include all user-defined struct declarations and it is therefore
140 respectively. This ensures portability between 32- and 64-bit platforms.
145 finally a format string for pretty-printing. For example::
152 ---------------------------------
156 changes are good trace events because they can be used to understand the
160 are good trace events because they can be used to understand guest
164 can be understood. For example, trace the pointer returned by malloc and
165 used as an argument to free. This way mallocs and frees can be matched up.
174 You can programmatically query and control the state of trace events through a
175 backend-agnostic interface provided by the header "trace/control.h".
179 header "trace/control.h" to see which routines are backend-dependent).
181 The state of events can also be queried and modified through monitor commands:
183 * ``info trace-events``
187 * ``trace-event NAME on|off``
188 Enable/disable a given trace event or a group of events (using wildcards).
190 The "--trace events=<file>" command line argument can be used to enable the
194 If a line in the "--trace events=<file>" file begins with a '-', the trace event
198 Wildcard matching is supported in both the monitor command "trace-event" and the
199 events list file. That means you can enable/disable the events having a common
200 prefix in a batch. For example, virtio-blk trace events could be enabled using
203 trace-event virtio_blk_* on
211 SystemTap. Support for trace backends can be added by extending the "tracetool"
216 ./configure --enable-trace-backends=simple,dtrace
218 For a list of supported trace backends, try ./configure --help or see below.
227 ---
230 can optimize out trace events completely. This imposes no performance
233 Note that regardless of the selected trace backend, events with the "disable"
237 ---
242 This is the simplest backend and can be used together with existing code that
245 The -msg timestamp=on|off command-line option controls whether or not to print
249 -----------
254 platform-specific or third-party trace backends but it is portable and has no
260 * ``trace-file on|off|flush|set <path>``
261 Enable/disable/flush the trace file or set the trace file name.
266 The "simple" backend produces binary trace files that can be formatted with the
267 simpletrace.py script. The script takes the "trace-events-all" file and the
270 ./scripts/simpletrace.py trace-events-all trace-12345
272 You must ensure that the same "trace-events-all" file was used to build QEMU,
277 ------
280 sends trace events to ftrace ring buffer, and you can compare qemu trace
287 After running qemu by root user, you can get the trace::
294 ------
307 ----------------------
311 enable/disable, and dump traces.
313 Package lttng-tools is required for userspace tracing. You must ensure that the
315 lttng-sessiond daemon for the current user prior to running any instance of
321 lttng list -u
329 lttng enable-event qemu:g_malloc -u
331 Where the events can either be a comma-separated list of events, or "-a" to
345 Babeltrace can be used at any later time to view the trace::
347 babeltrace $HOME/lttng-traces/mysession-<date>-<time>
350 ---------
354 is generated to make use in scripts more convenient. This step can also be
358 scripts/tracetool.py --backends=dtrace --format=stap \
359 --binary path/to/qemu-binary \
360 --probe-prefix qemu.system.x86_64 \
361 --group=all \
362 trace-events-all \
366 logging of certain probes, a helper script "qemu-trace-stap" is provided.
372 Each event in the "trace-events-all" file can be prefixed with a space-separated
375 "disable"
376 ---------
382 In this case you should declare such event with the "disable" property. This
383 will effectively disable the event at compile time (by using the "nop" backend),
385 edit the "trace-events-all" file).
389 function. In these cases you can use 'trace_event_get_state_backends()' to
391 compile-time disabled or run-time disabled. If the event is compile-time