qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v3 00/11] simplify usage of tracepoints, and con


From: Paolo Bonzini
Subject: Re: [Qemu-devel] [PATCH v3 00/11] simplify usage of tracepoints, and connect them to logging
Date: Tue, 3 Nov 2015 18:33:14 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0


On 03/11/2015 18:10, Stefan Hajnoczi wrote:
> On Thu, Oct 29, 2015 at 11:44:06PM +0300, Denis V. Lunev wrote:
>> This series does three things:
>> 
>> 1) add a "-trace [enable=]foo" option to enable one or more
>> trace events, and a "-trace help" option to show the list of
>> tracepoints (patches 4-5)
>> 
>> 2) change the stderr tracing backend so that it prints to the -D
>> log file, and enable it by default.  "-trace file=..." is now a
>> synonym of -D if the log backend is enabled (patches 7-8)
>> 
>> 3) add a "-d trace:foo" option that is a synonym for "-trace
>> foo"; this makes the new functionality more discoverable to
>> people used to "-d", makes it available for user-mode emulation
>> (which does not have -trace), and is somewhat nice if you want to
>> enable both tracepoints and some other "-d" flag (patch 9).  When
>> globbing it is also less susceptible to unwanted shell
>> expansion.
>> 
>> For example, you can trace block device I/O and save the result 
>> to a file just by adding "-trace bdrv_aio_*,file=trace.txt", or 
>> correlate it to guest PCs with "-d
>> exec,nochain,trace:bdrv_aio_*".
>> 
>> Opinions?  I would like to have this in 2.5 if there is
>> agreement.
>> 
>> Signed-off-by: Paolo Bonzini <address@hidden> Signed-off-by:
>> Denis V. Lunev <address@hidden>
>> 
>> Changes from v2: - compilation fix was extended to patch 2 and 3 
>> - replaced Reviewed-by with Acked-by by request from Christian
>> 
>> Changes from v1: - small cleanup to vl.c is added as patch (4) -
>> compilation is fixed in patch (2) - moved qemu-log.c to
>> util/log.c to fix linking of qemu-io/qemu-nbd
>> 
>> Denis V. Lunev (2): trace: no need to call trace_backend_init in
>> different branches now log: move qemu-log.c into util/ directory
>> 
>> Paolo Bonzini (9): trace: fix documentation trace: split
>> trace_init_events out of trace_init_backends trace: split
>> trace_init_file out of trace_init_backends trace: add "-trace
>> enable=..." trace: add "-trace help" log: do not unnecessarily
>> include qom/cpu.h trace: convert stderr backend to log trace:
>> switch default backend to "log" log: add "-d trace:PATTERN"
>> 
>> Makefile.objs                                   |  1 - 
>> bsd-user/main.c                                 |  1 + configure
>> |  6 +- cpu-exec.c                                      |  1 + 
>> exec.c                                          |  1 + 
>> hw/acpi/cpu_hotplug.c                           |  1 + 
>> hw/timer/a9gtimer.c                             |  1 + 
>> include/exec/log.h                              | 60
>> ++++++++++++++++ include/qemu/log.h
>> | 60 +--------------- linux-user/main.c
>> |  1 + qemu-io.c                                       |  2 +- 
>> qemu-options.hx                                 | 22 ++++-- 
>> qom/cpu.c                                       |  1 + 
>> scripts/tracetool/backend/{stderr.py => log.py} |  9 +-- 
>> target-alpha/translate.c                        |  1 + 
>> target-arm/translate.c                          |  1 + 
>> target-cris/translate.c                         |  1 + 
>> target-i386/seg_helper.c                        |  1 + 
>> target-i386/smm_helper.c                        |  1 + 
>> target-i386/translate.c                         |  1 + 
>> target-lm32/helper.c                            |  1 + 
>> target-lm32/translate.c                         |  1 + 
>> target-m68k/translate.c                         |  1 + 
>> target-microblaze/helper.c                      |  1 + 
>> target-microblaze/translate.c                   |  1 + 
>> target-mips/helper.c                            |  1 + 
>> target-mips/translate.c                         |  1 + 
>> target-moxie/translate.c                        |  1 + 
>> target-openrisc/translate.c                     |  1 + 
>> target-ppc/mmu-hash32.c                         |  1 + 
>> target-ppc/mmu-hash64.c                         |  1 + 
>> target-ppc/mmu_helper.c                         |  1 + 
>> target-ppc/translate.c                          |  1 + 
>> target-s390x/translate.c                        |  1 + 
>> target-sh4/helper.c                             |  1 + 
>> target-sh4/translate.c                          |  1 + 
>> target-sparc/int32_helper.c                     |  1 + 
>> target-sparc/int64_helper.c                     |  1 + 
>> target-sparc/translate.c                        |  1 + 
>> target-tilegx/translate.c                       |  1 + 
>> target-tricore/translate.c                      |  1 + 
>> target-unicore32/translate.c                    |  1 + 
>> target-xtensa/translate.c                       |  1 + tcg/tcg.c
>> |  1 + trace/control.c                                 | 95
>> ++++++++++++++++++------- trace/control.h
>> | 42 ++++++++++- trace/simple.c
>> |  6 +- trace/simple.h                                  |  4 +- 
>> translate-all.c                                 |  1 + 
>> util/Makefile.objs                              |  1 + qemu-log.c
>> => util/log.c                        | 19 ++++- vl.c
>> | 38 +++++----- 52 files changed, 274 insertions(+), 129
>> deletions(-) create mode 100644 include/exec/log.h rename
>> scripts/tracetool/backend/{stderr.py => log.py} (78%) rename
>> qemu-log.c => util/log.c (90%)
>> 
>> -- 2.1.4
>> 
>> 
> 
> Thanks, applied to my tracing tree: 
> https://github.com/stefanha/qemu/commits/tracing

Thanks Denis and Stefan!  I hope this will make it simpler to track
user problems, and will also encourage people to use tracepoints more.

Paolo



reply via email to

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