* [Qemu-devel] [PATCH v5 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img @ 2016-06-14 9:16 Denis V. Lunev 2016-06-14 9:16 ` [Qemu-devel] [PATCH 1/7] doc: move text describing --trace to specific .texi file Denis V. Lunev ` (7 more replies) 0 siblings, 8 replies; 16+ messages in thread From: Denis V. Lunev @ 2016-06-14 9:16 UTC (permalink / raw) To: qemu-devel, qemu-block Cc: eblake, Denis V. Lunev, Paolo Bonzini, Stefan Hajnoczi, Kevin Wolf Changes from v4: - synced help descriprion for --trace with man for qemu.1/qemu-img.1/qemu-nbd.8 - moved @findex from qemu-option-trace.texi Changes from v3: - fixed difference in help/man for qemu-img/qemu-nbd - created separate .texi to contain trace description, proper dependency is added to makefile - added --version/--help description to qemu-img - fixed crash induced by new option processing scheme in qemu-img which has happened when invoked as './qemu-img -K' Changes from v2: - tweaked man-pages of qemu-nbd/qemu-img - added support for qemu-img (patches 4-5 as suggested) Changes from v1: - fixed nits found by Eric Signed-off-by: Denis V. Lunev <den@openvz.org> CC: Eric Blake <eblake@redhat.com> CC: Paolo Bonzini <pbonzini@redhat.com> CC: Stefan Hajnoczi <stefanha@redhat.com> CC: Kevin Wolf <kwolf@redhat.com> Denis V. Lunev (7): doc: move text describing --trace to specific .texi file doc: sync help descriprion for --trace with man for qemu.1 trace: move qemu_trace_opts to trace/control.c trace: enable tracing in qemu-io trace: enable tracing in qemu-nbd qemu-img: move common options parsing before commands processing trace: enable tracing in qemu-img Makefile | 7 ++++--- qemu-img.c | 55 ++++++++++++++++++++++++++++++++++++++------------ qemu-img.texi | 13 +++++++++++- qemu-io.c | 17 ++++++++++++---- qemu-nbd.c | 18 ++++++++++++++++- qemu-nbd.texi | 3 +++ qemu-option-trace.texi | 25 +++++++++++++++++++++++ qemu-options.hx | 29 ++------------------------ trace/control.c | 44 +++++++++++++++++++++++++++++++++++++++- trace/control.h | 24 ++++++++++++---------- vl.c | 37 +-------------------------------- 11 files changed, 175 insertions(+), 97 deletions(-) create mode 100644 qemu-option-trace.texi -- 2.1.4 ^ permalink raw reply [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH 1/7] doc: move text describing --trace to specific .texi file 2016-06-14 9:16 [Qemu-devel] [PATCH v5 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img Denis V. Lunev @ 2016-06-14 9:16 ` Denis V. Lunev 2016-06-14 9:16 ` [Qemu-devel] [PATCH 2/7] doc: sync help descriprion for --trace with man for qemu.1 Denis V. Lunev ` (6 subsequent siblings) 7 siblings, 0 replies; 16+ messages in thread From: Denis V. Lunev @ 2016-06-14 9:16 UTC (permalink / raw) To: qemu-devel, qemu-block Cc: eblake, Denis V. Lunev, Paolo Bonzini, Stefan Hajnoczi, Kevin Wolf This text will be included to qemu-nbd/qemu-img mans in the next patches. Signed-off-by: Denis V. Lunev <den@openvz.org> CC: Eric Blake <eblake@redhat.com> CC: Paolo Bonzini <pbonzini@redhat.com> CC: Stefan Hajnoczi <stefanha@redhat.com> CC: Kevin Wolf <kwolf@redhat.com> --- Makefile | 3 ++- qemu-option-trace.texi | 25 +++++++++++++++++++++++++ qemu-options.hx | 27 +-------------------------- 3 files changed, 28 insertions(+), 27 deletions(-) create mode 100644 qemu-option-trace.texi diff --git a/Makefile b/Makefile index ed4032a..eb6c573 100644 --- a/Makefile +++ b/Makefile @@ -564,6 +564,7 @@ qemu.1: qemu-doc.texi qemu-options.texi qemu-monitor.texi qemu-monitor-info.texi perl -Ww -- $(SRC_PATH)/scripts/texi2pod.pl $< qemu.pod && \ $(POD2MAN) --section=1 --center=" " --release=" " qemu.pod > $@, \ " GEN $@") +qemu.1: qemu-option-trace.texi qemu-img.1: qemu-img.texi qemu-img-cmds.texi $(call quiet-command, \ @@ -595,7 +596,7 @@ info: qemu-doc.info qemu-tech.info pdf: qemu-doc.pdf qemu-tech.pdf qemu-doc.dvi qemu-doc.html qemu-doc.info qemu-doc.pdf: \ - qemu-img.texi qemu-nbd.texi qemu-options.texi \ + qemu-img.texi qemu-nbd.texi qemu-options.texi qemu-option-trace.texi \ qemu-monitor.texi qemu-img-cmds.texi qemu-ga.texi \ qemu-monitor-info.texi diff --git a/qemu-option-trace.texi b/qemu-option-trace.texi new file mode 100644 index 0000000..0296ca6 --- /dev/null +++ b/qemu-option-trace.texi @@ -0,0 +1,25 @@ +Specify tracing options. + +@table @option +@item [enable=]@var{pattern} +Immediately enable events matching @var{pattern}. +The file must contain one event name (as listed in the @file{trace-events} file) +per line; globbing patterns are accepted too. This option is only +available if QEMU has been compiled with the @var{simple}, @var{stderr} +or @var{ftrace} tracing backend. To specify multiple events or patterns, +specify the @option{-trace} option multiple times. + +Use @code{-trace help} to print a list of names of trace points. + +@item events=@var{file} +Immediately enable events listed in @var{file}. +The file must contain one event name (as listed in the @file{trace-events} file) +per line; globbing patterns are accepted too. This option is only +available if QEMU has been compiled with the @var{simple}, @var{stderr} or +@var{ftrace} tracing backend. + +@item file=@var{file} +Log output traces to @var{file}. +This option is only available if QEMU has been compiled with +the @var{simple} tracing backend. +@end table diff --git a/qemu-options.hx b/qemu-options.hx index 0e42ba5..1f9b390 100644 --- a/qemu-options.hx +++ b/qemu-options.hx @@ -3669,32 +3669,7 @@ HXCOMM This line is not accurate, as some sub-options are backend-specific but HXCOMM HX does not support conditional compilation of text. @item -trace [events=@var{file}][,file=@var{file}] @findex -trace - -Specify tracing options. - -@table @option -@item [enable=]@var{pattern} -Immediately enable events matching @var{pattern}. -The file must contain one event name (as listed in the @file{trace-events} file) -per line; globbing patterns are accepted too. This option is only -available if QEMU has been compiled with the @var{simple}, @var{stderr} -or @var{ftrace} tracing backend. To specify multiple events or patterns, -specify the @option{-trace} option multiple times. - -Use @code{-trace help} to print a list of names of trace points. - -@item events=@var{file} -Immediately enable events listed in @var{file}. -The file must contain one event name (as listed in the @file{trace-events} file) -per line; globbing patterns are accepted too. This option is only -available if QEMU has been compiled with the @var{simple}, @var{stderr} or -@var{ftrace} tracing backend. - -@item file=@var{file} -Log output traces to @var{file}. -This option is only available if QEMU has been compiled with -the @var{simple} tracing backend. -@end table +@include qemu-option-trace.texi ETEXI HXCOMM Internal use -- 2.1.4 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH 2/7] doc: sync help descriprion for --trace with man for qemu.1 2016-06-14 9:16 [Qemu-devel] [PATCH v5 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img Denis V. Lunev 2016-06-14 9:16 ` [Qemu-devel] [PATCH 1/7] doc: move text describing --trace to specific .texi file Denis V. Lunev @ 2016-06-14 9:16 ` Denis V. Lunev 2016-06-14 9:16 ` [Qemu-devel] [PATCH 3/7] trace: move qemu_trace_opts to trace/control.c Denis V. Lunev ` (5 subsequent siblings) 7 siblings, 0 replies; 16+ messages in thread From: Denis V. Lunev @ 2016-06-14 9:16 UTC (permalink / raw) To: qemu-devel, qemu-block Cc: eblake, Denis V. Lunev, Paolo Bonzini, Stefan Hajnoczi, Kevin Wolf Signed-off-by: Denis V. Lunev <den@openvz.org> CC: Eric Blake <eblake@redhat.com> CC: Paolo Bonzini <pbonzini@redhat.com> CC: Stefan Hajnoczi <stefanha@redhat.com> CC: Kevin Wolf <kwolf@redhat.com> --- qemu-options.hx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qemu-options.hx b/qemu-options.hx index 1f9b390..f28abd3 100644 --- a/qemu-options.hx +++ b/qemu-options.hx @@ -3667,7 +3667,7 @@ DEF("trace", HAS_ARG, QEMU_OPTION_trace, STEXI HXCOMM This line is not accurate, as some sub-options are backend-specific but HXCOMM HX does not support conditional compilation of text. -@item -trace [events=@var{file}][,file=@var{file}] +@item -trace [[enable=]@var{pattern}][,events=@var{file}][,file=@var{file}] @findex -trace @include qemu-option-trace.texi ETEXI -- 2.1.4 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH 3/7] trace: move qemu_trace_opts to trace/control.c 2016-06-14 9:16 [Qemu-devel] [PATCH v5 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img Denis V. Lunev 2016-06-14 9:16 ` [Qemu-devel] [PATCH 1/7] doc: move text describing --trace to specific .texi file Denis V. Lunev 2016-06-14 9:16 ` [Qemu-devel] [PATCH 2/7] doc: sync help descriprion for --trace with man for qemu.1 Denis V. Lunev @ 2016-06-14 9:16 ` Denis V. Lunev 2016-06-14 9:16 ` [Qemu-devel] [PATCH 4/7] trace: enable tracing in qemu-io Denis V. Lunev ` (4 subsequent siblings) 7 siblings, 0 replies; 16+ messages in thread From: Denis V. Lunev @ 2016-06-14 9:16 UTC (permalink / raw) To: qemu-devel, qemu-block Cc: eblake, Denis V. Lunev, Paolo Bonzini, Stefan Hajnoczi, Kevin Wolf The patch also creates trace_opt_parse() helper in trace/control.c to reuse this code in next patches for qemu-nbd and qemu-io. The patch also makes trace_init_events() static, as this call is not used outside the module anymore. Signed-off-by: Denis V. Lunev <den@openvz.org> Reviewed-by: Eric Blake <eblake@redhat.com> CC: Paolo Bonzini <pbonzini@redhat.com> CC: Stefan Hajnoczi <stefanha@redhat.com> CC: Kevin Wolf <kwolf@redhat.com> --- trace/control.c | 44 +++++++++++++++++++++++++++++++++++++++++++- trace/control.h | 24 +++++++++++++----------- vl.c | 37 +------------------------------------ 3 files changed, 57 insertions(+), 48 deletions(-) diff --git a/trace/control.c b/trace/control.c index d099f73..75fc731 100644 --- a/trace/control.c +++ b/trace/control.c @@ -20,11 +20,33 @@ #include "qemu/log.h" #endif #include "qemu/error-report.h" +#include "qemu/config-file.h" #include "monitor/monitor.h" int trace_events_enabled_count; bool trace_events_dstate[TRACE_EVENT_COUNT]; +QemuOptsList qemu_trace_opts = { + .name = "trace", + .implied_opt_name = "enable", + .head = QTAILQ_HEAD_INITIALIZER(qemu_trace_opts.head), + .desc = { + { + .name = "enable", + .type = QEMU_OPT_STRING, + }, + { + .name = "events", + .type = QEMU_OPT_STRING, + },{ + .name = "file", + .type = QEMU_OPT_STRING, + }, + { /* end of list */ } + }, +}; + + TraceEvent *trace_event_name(const char *name) { assert(name != NULL); @@ -141,7 +163,7 @@ void trace_enable_events(const char *line_buf) } } -void trace_init_events(const char *fname) +static void trace_init_events(const char *fname) { Location loc; FILE *fp; @@ -216,3 +238,23 @@ bool trace_init_backends(void) return true; } + +char *trace_opt_parse(const char *optarg, char *trace_file) +{ + QemuOpts *opts = qemu_opts_parse_noisily(qemu_find_opts("trace"), + optarg, true); + if (!opts) { + exit(1); + } + if (qemu_opt_get(opts, "enable")) { + trace_enable_events(qemu_opt_get(opts, "enable")); + } + trace_init_events(qemu_opt_get(opts, "events")); + if (trace_file) { + g_free(trace_file); + } + trace_file = g_strdup(qemu_opt_get(opts, "file")); + qemu_opts_del(opts); + + return trace_file; +} diff --git a/trace/control.h b/trace/control.h index e2ba6d4..942f9f5 100644 --- a/trace/control.h +++ b/trace/control.h @@ -160,17 +160,6 @@ static void trace_event_set_state_dynamic(TraceEvent *ev, bool state); bool trace_init_backends(void); /** - * trace_init_events: - * @events: Name of file with events to be enabled at startup; may be NULL. - * Corresponds to commandline option "-trace events=...". - * - * Read the list of enabled tracing events. - * - * Returns: Whether the backends could be successfully initialized. - */ -void trace_init_events(const char *file); - -/** * trace_init_file: * @file: Name of trace output file; may be NULL. * Corresponds to commandline option "-trace file=...". @@ -197,6 +186,19 @@ void trace_list_events(void); */ void trace_enable_events(const char *line_buf); +/** + * Definition of QEMU options describing trace subsystem configuration + */ +extern QemuOptsList qemu_trace_opts; + +/** + * trace_opt_parse: + * @optarg: A string argument of --trace command line argument + * @trace_file: current filename to save traces to + * + * Initialize tracing subsystem. + */ +char *trace_opt_parse(const char *optarg, char *trace_file); #include "trace/control-internal.h" diff --git a/vl.c b/vl.c index b0bcc25..7d72599 100644 --- a/vl.c +++ b/vl.c @@ -262,26 +262,6 @@ static QemuOptsList qemu_sandbox_opts = { }, }; -static QemuOptsList qemu_trace_opts = { - .name = "trace", - .implied_opt_name = "enable", - .head = QTAILQ_HEAD_INITIALIZER(qemu_trace_opts.head), - .desc = { - { - .name = "enable", - .type = QEMU_OPT_STRING, - }, - { - .name = "events", - .type = QEMU_OPT_STRING, - },{ - .name = "file", - .type = QEMU_OPT_STRING, - }, - { /* end of list */ } - }, -}; - static QemuOptsList qemu_option_rom_opts = { .name = "option-rom", .implied_opt_name = "romfile", @@ -3872,23 +3852,8 @@ int main(int argc, char **argv, char **envp) xen_mode = XEN_ATTACH; break; case QEMU_OPTION_trace: - { - opts = qemu_opts_parse_noisily(qemu_find_opts("trace"), - optarg, true); - if (!opts) { - exit(1); - } - if (qemu_opt_get(opts, "enable")) { - trace_enable_events(qemu_opt_get(opts, "enable")); - } - trace_init_events(qemu_opt_get(opts, "events")); - if (trace_file) { - g_free(trace_file); - } - trace_file = g_strdup(qemu_opt_get(opts, "file")); - qemu_opts_del(opts); + trace_file = trace_opt_parse(optarg, trace_file); break; - } case QEMU_OPTION_readconfig: { int ret = qemu_read_config_file(optarg); -- 2.1.4 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH 4/7] trace: enable tracing in qemu-io 2016-06-14 9:16 [Qemu-devel] [PATCH v5 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img Denis V. Lunev ` (2 preceding siblings ...) 2016-06-14 9:16 ` [Qemu-devel] [PATCH 3/7] trace: move qemu_trace_opts to trace/control.c Denis V. Lunev @ 2016-06-14 9:16 ` Denis V. Lunev 2016-06-14 9:16 ` [Qemu-devel] [PATCH 5/7] trace: enable tracing in qemu-nbd Denis V. Lunev ` (3 subsequent siblings) 7 siblings, 0 replies; 16+ messages in thread From: Denis V. Lunev @ 2016-06-14 9:16 UTC (permalink / raw) To: qemu-devel, qemu-block Cc: eblake, Denis V. Lunev, Paolo Bonzini, Stefan Hajnoczi, Kevin Wolf Moving trace_init_backends() into trace_opt_parse() is not possible. This should be called after daemonize() in vl.c. Signed-off-by: Denis V. Lunev <den@openvz.org> Reviewed-by: Eric Blake <eblake@redhat.com> CC: Paolo Bonzini <pbonzini@redhat.com> CC: Stefan Hajnoczi <stefanha@redhat.com> CC: Kevin Wolf <kwolf@redhat.com> --- qemu-io.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/qemu-io.c b/qemu-io.c index d977a6e..0ef28b0 100644 --- a/qemu-io.c +++ b/qemu-io.c @@ -18,6 +18,7 @@ #include "qemu/option.h" #include "qemu/config-file.h" #include "qemu/readline.h" +#include "qemu/log.h" #include "qapi/qmp/qstring.h" #include "qom/object_interfaces.h" #include "sysemu/block-backend.h" @@ -253,7 +254,9 @@ static void usage(const char *name) " -k, --native-aio use kernel AIO implementation (on Linux only)\n" " -t, --cache=MODE use the given cache mode for the image\n" " -d, --discard=MODE use the given discard mode for the image\n" -" -T, --trace FILE enable trace events listed in the given file\n" +" -T, --trace [[enable=]<pattern>][,events=<file>][,file=<file>]\n" +" specify tracing options\n" +" see qemu-img(1) man page for full description\n" " -h, --help display this help and exit\n" " -V, --version output version information and exit\n" "\n" @@ -458,6 +461,7 @@ int main(int argc, char **argv) Error *local_error = NULL; QDict *opts = NULL; const char *format = NULL; + char *trace_file = NULL; #ifdef CONFIG_POSIX signal(SIGPIPE, SIG_IGN); @@ -470,6 +474,7 @@ int main(int argc, char **argv) module_call_init(MODULE_INIT_QOM); qemu_add_opts(&qemu_object_opts); + qemu_add_opts(&qemu_trace_opts); bdrv_init(); while ((c = getopt_long(argc, argv, sopt, lopt, &opt_index)) != -1) { @@ -509,9 +514,7 @@ int main(int argc, char **argv) } break; case 'T': - if (!trace_init_backends()) { - exit(1); /* error message will have been printed */ - } + trace_file = trace_opt_parse(optarg, trace_file); break; case 'V': printf("%s version %s\n", progname, QEMU_VERSION); @@ -557,6 +560,12 @@ int main(int argc, char **argv) exit(1); } + if (!trace_init_backends()) { + exit(1); + } + trace_init_file(trace_file); + qemu_set_log(LOG_TRACE); + /* initialize commands */ qemuio_add_command(&quit_cmd); qemuio_add_command(&open_cmd); -- 2.1.4 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH 5/7] trace: enable tracing in qemu-nbd 2016-06-14 9:16 [Qemu-devel] [PATCH v5 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img Denis V. Lunev ` (3 preceding siblings ...) 2016-06-14 9:16 ` [Qemu-devel] [PATCH 4/7] trace: enable tracing in qemu-io Denis V. Lunev @ 2016-06-14 9:16 ` Denis V. Lunev 2016-06-14 9:16 ` [Qemu-devel] [PATCH 6/7] qemu-img: move common options parsing before commands processing Denis V. Lunev ` (2 subsequent siblings) 7 siblings, 0 replies; 16+ messages in thread From: Denis V. Lunev @ 2016-06-14 9:16 UTC (permalink / raw) To: qemu-devel, qemu-block Cc: eblake, Denis V. Lunev, Paolo Bonzini, Stefan Hajnoczi, Kevin Wolf Please note, trace_init_backends() must be called in the final process, i.e. after daemonization. This is necessary to keep tracing thread in the proper process. Signed-off-by: Denis V. Lunev <den@openvz.org> CC: Eric Blake <eblake@redhat.com> CC: Paolo Bonzini <pbonzini@redhat.com> CC: Stefan Hajnoczi <stefanha@redhat.com> CC: Kevin Wolf <kwolf@redhat.com> --- Makefile | 2 +- qemu-nbd.c | 18 +++++++++++++++++- qemu-nbd.texi | 3 +++ 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index eb6c573..a291b7b 100644 --- a/Makefile +++ b/Makefile @@ -578,7 +578,7 @@ fsdev/virtfs-proxy-helper.1: fsdev/virtfs-proxy-helper.texi $(POD2MAN) --section=1 --center=" " --release=" " fsdev/virtfs-proxy-helper.pod > $@, \ " GEN $@") -qemu-nbd.8: qemu-nbd.texi +qemu-nbd.8: qemu-nbd.texi qemu-option-trace.texi $(call quiet-command, \ perl -Ww -- $(SRC_PATH)/scripts/texi2pod.pl $< qemu-nbd.pod && \ $(POD2MAN) --section=8 --center=" " --release=" " qemu-nbd.pod > $@, \ diff --git a/qemu-nbd.c b/qemu-nbd.c index 6554f0a..f92820f 100644 --- a/qemu-nbd.c +++ b/qemu-nbd.c @@ -27,12 +27,14 @@ #include "qemu/error-report.h" #include "qemu/config-file.h" #include "qemu/bswap.h" +#include "qemu/log.h" #include "block/snapshot.h" #include "qapi/util.h" #include "qapi/qmp/qstring.h" #include "qom/object_interfaces.h" #include "io/channel-socket.h" #include "crypto/init.h" +#include "trace/control.h" #include <getopt.h> #include <libgen.h> @@ -88,6 +90,8 @@ static void usage(const char *name) "General purpose options:\n" " --object type,id=ID,... define an object such as 'secret' for providing\n" " passwords and/or encryption keys\n" +" -T, --trace [[enable=]<pattern>][,events=<file>][,file=<file>]\n" +" specify tracing options\n" #ifdef __linux__ "Kernel NBD client support:\n" " -c, --connect=DEV connect FILE to the local NBD device DEV\n" @@ -470,7 +474,7 @@ int main(int argc, char **argv) off_t fd_size; QemuOpts *sn_opts = NULL; const char *sn_id_or_name = NULL; - const char *sopt = "hVb:o:p:rsnP:c:dvk:e:f:tl:x:"; + const char *sopt = "hVb:o:p:rsnP:c:dvk:e:f:tl:x:T:"; struct option lopt[] = { { "help", no_argument, NULL, 'h' }, { "version", no_argument, NULL, 'V' }, @@ -498,6 +502,7 @@ int main(int argc, char **argv) { "export-name", required_argument, NULL, 'x' }, { "tls-creds", required_argument, NULL, QEMU_NBD_OPT_TLSCREDS }, { "image-opts", no_argument, NULL, QEMU_NBD_OPT_IMAGE_OPTS }, + { "trace", required_argument, NULL, 'T' }, { NULL, 0, NULL, 0 } }; int ch; @@ -518,6 +523,7 @@ int main(int argc, char **argv) const char *tlscredsid = NULL; bool imageOpts = false; bool writethrough = true; + char *trace_file = NULL; /* The client thread uses SIGTERM to interrupt the server. A signal * handler ensures that "qemu-nbd -v -c" exits with a nice status code. @@ -531,6 +537,7 @@ int main(int argc, char **argv) module_call_init(MODULE_INIT_QOM); qemu_add_opts(&qemu_object_opts); + qemu_add_opts(&qemu_trace_opts); qemu_init_exec_dir(argv[0]); while ((ch = getopt_long(argc, argv, sopt, lopt, &opt_ind)) != -1) { @@ -703,6 +710,9 @@ int main(int argc, char **argv) case QEMU_NBD_OPT_IMAGE_OPTS: imageOpts = true; break; + case 'T': + trace_file = trace_opt_parse(optarg, trace_file); + break; } } @@ -718,6 +728,12 @@ int main(int argc, char **argv) exit(EXIT_FAILURE); } + if (!trace_init_backends()) { + exit(1); + } + trace_init_file(trace_file); + qemu_set_log(LOG_TRACE); + if (tlscredsid) { if (sockpath) { error_report("TLS is only supported with IPv4/IPv6"); diff --git a/qemu-nbd.texi b/qemu-nbd.texi index 9f23343..91ebf04 100644 --- a/qemu-nbd.texi +++ b/qemu-nbd.texi @@ -92,6 +92,9 @@ Display extra debugging information Display this help and exit @item -V, --version Display version information and exit +@item -T, --trace [[enable=]@var{pattern}][,events=@var{file}][,file=@var{file}] +@findex --trace +@include qemu-option-trace.texi @end table @c man end -- 2.1.4 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH 6/7] qemu-img: move common options parsing before commands processing 2016-06-14 9:16 [Qemu-devel] [PATCH v5 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img Denis V. Lunev ` (4 preceding siblings ...) 2016-06-14 9:16 ` [Qemu-devel] [PATCH 5/7] trace: enable tracing in qemu-nbd Denis V. Lunev @ 2016-06-14 9:16 ` Denis V. Lunev 2016-06-14 9:17 ` [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img Denis V. Lunev 2016-06-14 10:07 ` [Qemu-devel] [PATCH v5 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img Denis V. Lunev 7 siblings, 0 replies; 16+ messages in thread From: Denis V. Lunev @ 2016-06-14 9:16 UTC (permalink / raw) To: qemu-devel, qemu-block Cc: eblake, Denis V. Lunev, Paolo Bonzini, Stefan Hajnoczi, Kevin Wolf This is necessary to enable creation of common qemu-img options which will be specified before command. The patch also enables '-V' alias to '--version' (exactly like in other block utilities) and documents this change. Signed-off-by: Denis V. Lunev <den@openvz.org> Reviewed-by: Eric Blake <eblake@redhat.com> CC: Paolo Bonzini <pbonzini@redhat.com> CC: Stefan Hajnoczi <stefanha@redhat.com> CC: Kevin Wolf <kwolf@redhat.com> --- qemu-img.c | 39 ++++++++++++++++++++++++++------------- qemu-img.texi | 10 +++++++++- 2 files changed, 35 insertions(+), 14 deletions(-) diff --git a/qemu-img.c b/qemu-img.c index 251386b..b4217e4 100644 --- a/qemu-img.c +++ b/qemu-img.c @@ -91,9 +91,12 @@ static void QEMU_NORETURN help(void) { const char *help_msg = QEMU_IMG_VERSION - "usage: qemu-img command [command options]\n" + "usage: qemu-img [standard options] command [command options]\n" "QEMU disk image utility\n" "\n" + " '-h', '--help' display this help and exit\n" + " '-V', '--version' output version information and exit\n" + "\n" "Command syntax:\n" #define DEF(option, callback, arg_string) \ " " arg_string "\n" @@ -3806,7 +3809,7 @@ int main(int argc, char **argv) int c; static const struct option long_options[] = { {"help", no_argument, 0, 'h'}, - {"version", no_argument, 0, 'v'}, + {"version", no_argument, 0, 'V'}, {0, 0, 0, 0} }; @@ -3829,27 +3832,37 @@ int main(int argc, char **argv) if (argc < 2) { error_exit("Not enough arguments"); } - cmdname = argv[1]; qemu_add_opts(&qemu_object_opts); qemu_add_opts(&qemu_source_opts); - /* find the command */ - for (cmd = img_cmds; cmd->name != NULL; cmd++) { - if (!strcmp(cmdname, cmd->name)) { - return cmd->handler(argc - 1, argv + 1); + while ((c = getopt_long(argc, argv, "+hV", long_options, NULL)) != -1) { + switch (c) { + case 'h': + help(); + return 0; + case 'V': + printf(QEMU_IMG_VERSION); + return 0; } } - c = getopt_long(argc, argv, "h", long_options, NULL); + cmdname = argv[optind]; - if (c == 'h') { - help(); - } - if (c == 'v') { - printf(QEMU_IMG_VERSION); + /* reset getopt_long scanning */ + argc -= optind; + if (argc < 1) { return 0; } + argv += optind; + optind = 1; + + /* find the command */ + for (cmd = img_cmds; cmd->name != NULL; cmd++) { + if (!strcmp(cmdname, cmd->name)) { + return cmd->handler(argc, argv); + } + } /* not found */ error_exit("Command not found: %s", cmdname); diff --git a/qemu-img.texi b/qemu-img.texi index cbe50e9..f1b874d 100644 --- a/qemu-img.texi +++ b/qemu-img.texi @@ -1,6 +1,6 @@ @example @c man begin SYNOPSIS -@command{qemu-img} @var{command} [@var{command} @var{options}] +@command{qemu-img} [@var{standard} @var{options}] @var{command} [@var{command} @var{options}] @c man end @end example @@ -16,6 +16,14 @@ inconsistent state. @c man begin OPTIONS +Standard options: +@table @option +@item -h, --help +Display this help and exit +@item -V, --version +Display version information and exit +@end table + The following commands are supported: @include qemu-img-cmds.texi -- 2.1.4 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img 2016-06-14 9:16 [Qemu-devel] [PATCH v5 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img Denis V. Lunev ` (5 preceding siblings ...) 2016-06-14 9:16 ` [Qemu-devel] [PATCH 6/7] qemu-img: move common options parsing before commands processing Denis V. Lunev @ 2016-06-14 9:17 ` Denis V. Lunev 2016-06-14 10:07 ` [Qemu-devel] [PATCH v5 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img Denis V. Lunev 7 siblings, 0 replies; 16+ messages in thread From: Denis V. Lunev @ 2016-06-14 9:17 UTC (permalink / raw) To: qemu-devel, qemu-block Cc: eblake, Denis V. Lunev, Paolo Bonzini, Stefan Hajnoczi, Kevin Wolf The command will work this way: qemu-img --trace qcow2* create -f qcow2 1.img 64G Signed-off-by: Denis V. Lunev <den@openvz.org> Suggested by: Daniel P. Berrange <berrange@redhat.com> CC: Eric Blake <eblake@redhat.com> CC: Paolo Bonzini <pbonzini@redhat.com> CC: Stefan Hajnoczi <stefanha@redhat.com> CC: Kevin Wolf <kwolf@redhat.com> --- Makefile | 2 +- qemu-img.c | 18 +++++++++++++++++- qemu-img.texi | 3 +++ 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index a291b7b..d3cb014 100644 --- a/Makefile +++ b/Makefile @@ -566,7 +566,7 @@ qemu.1: qemu-doc.texi qemu-options.texi qemu-monitor.texi qemu-monitor-info.texi " GEN $@") qemu.1: qemu-option-trace.texi -qemu-img.1: qemu-img.texi qemu-img-cmds.texi +qemu-img.1: qemu-img.texi qemu-option-trace.texi qemu-img-cmds.texi $(call quiet-command, \ perl -Ww -- $(SRC_PATH)/scripts/texi2pod.pl $< qemu-img.pod && \ $(POD2MAN) --section=1 --center=" " --release=" " qemu-img.pod > $@, \ diff --git a/qemu-img.c b/qemu-img.c index b4217e4..0ff13f8 100644 --- a/qemu-img.c +++ b/qemu-img.c @@ -32,6 +32,7 @@ #include "qemu/config-file.h" #include "qemu/option.h" #include "qemu/error-report.h" +#include "qemu/log.h" #include "qom/object_interfaces.h" #include "sysemu/sysemu.h" #include "sysemu/block-backend.h" @@ -39,6 +40,7 @@ #include "block/blockjob.h" #include "block/qapi.h" #include "crypto/init.h" +#include "trace/control.h" #include <getopt.h> #define QEMU_IMG_VERSION "qemu-img version " QEMU_VERSION QEMU_PKGVERSION \ @@ -96,6 +98,8 @@ static void QEMU_NORETURN help(void) "\n" " '-h', '--help' display this help and exit\n" " '-V', '--version' output version information and exit\n" + " '-T', '--trace' [[enable=]<pattern>][,events=<file>][,file=<file>]\n" + " specify tracing options\n" "\n" "Command syntax:\n" #define DEF(option, callback, arg_string) \ @@ -3806,10 +3810,12 @@ int main(int argc, char **argv) const img_cmd_t *cmd; const char *cmdname; Error *local_error = NULL; + char *trace_file = NULL; int c; static const struct option long_options[] = { {"help", no_argument, 0, 'h'}, {"version", no_argument, 0, 'V'}, + {"trace", required_argument, NULL, 'T'}, {0, 0, 0, 0} }; @@ -3835,8 +3841,9 @@ int main(int argc, char **argv) qemu_add_opts(&qemu_object_opts); qemu_add_opts(&qemu_source_opts); + qemu_add_opts(&qemu_trace_opts); - while ((c = getopt_long(argc, argv, "+hV", long_options, NULL)) != -1) { + while ((c = getopt_long(argc, argv, "+hVT:", long_options, NULL)) != -1) { switch (c) { case 'h': help(); @@ -3844,6 +3851,9 @@ int main(int argc, char **argv) case 'V': printf(QEMU_IMG_VERSION); return 0; + case 'T': + trace_file = trace_opt_parse(optarg, trace_file); + break; } } @@ -3857,6 +3867,12 @@ int main(int argc, char **argv) argv += optind; optind = 1; + if (!trace_init_backends()) { + exit(1); + } + trace_init_file(trace_file); + qemu_set_log(LOG_TRACE); + /* find the command */ for (cmd = img_cmds; cmd->name != NULL; cmd++) { if (!strcmp(cmdname, cmd->name)) { diff --git a/qemu-img.texi b/qemu-img.texi index f1b874d..2779a94 100644 --- a/qemu-img.texi +++ b/qemu-img.texi @@ -22,6 +22,9 @@ Standard options: Display this help and exit @item -V, --version Display version information and exit +@item -T, --trace [events=@var{file}][,file=@var{file}] +@findex --trace +@include qemu-option-trace.texi @end table The following commands are supported: -- 2.1.4 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* Re: [Qemu-devel] [PATCH v5 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img 2016-06-14 9:16 [Qemu-devel] [PATCH v5 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img Denis V. Lunev ` (6 preceding siblings ...) 2016-06-14 9:17 ` [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img Denis V. Lunev @ 2016-06-14 10:07 ` Denis V. Lunev 7 siblings, 0 replies; 16+ messages in thread From: Denis V. Lunev @ 2016-06-14 10:07 UTC (permalink / raw) To: qemu-devel, qemu-block; +Cc: eblake, Paolo Bonzini, Stefan Hajnoczi, Kevin Wolf On 06/14/2016 12:16 PM, Denis V. Lunev wrote: > Changes from v4: > - synced help descriprion for --trace with man for qemu.1/qemu-img.1/qemu-nbd.8 > - moved @findex from qemu-option-trace.texi > > Changes from v3: > - fixed difference in help/man for qemu-img/qemu-nbd > - created separate .texi to contain trace description, proper dependency is > added to makefile > - added --version/--help description to qemu-img > - fixed crash induced by new option processing scheme in qemu-img which > has happened when invoked as './qemu-img -K' > > Changes from v2: > - tweaked man-pages of qemu-nbd/qemu-img > - added support for qemu-img (patches 4-5 as suggested) > > Changes from v1: > - fixed nits found by Eric > > Signed-off-by: Denis V. Lunev <den@openvz.org> > CC: Eric Blake <eblake@redhat.com> > CC: Paolo Bonzini <pbonzini@redhat.com> > CC: Stefan Hajnoczi <stefanha@redhat.com> > CC: Kevin Wolf <kwolf@redhat.com> > > Denis V. Lunev (7): > doc: move text describing --trace to specific .texi file > doc: sync help descriprion for --trace with man for qemu.1 > trace: move qemu_trace_opts to trace/control.c > trace: enable tracing in qemu-io > trace: enable tracing in qemu-nbd > qemu-img: move common options parsing before commands processing > trace: enable tracing in qemu-img > > Makefile | 7 ++++--- > qemu-img.c | 55 ++++++++++++++++++++++++++++++++++++++------------ > qemu-img.texi | 13 +++++++++++- > qemu-io.c | 17 ++++++++++++---- > qemu-nbd.c | 18 ++++++++++++++++- > qemu-nbd.texi | 3 +++ > qemu-option-trace.texi | 25 +++++++++++++++++++++++ > qemu-options.hx | 29 ++------------------------ > trace/control.c | 44 +++++++++++++++++++++++++++++++++++++++- > trace/control.h | 24 ++++++++++++---------- > vl.c | 37 +-------------------------------- > 11 files changed, 175 insertions(+), 97 deletions(-) > create mode 100644 qemu-option-trace.texi > pls ignore ^ permalink raw reply [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH v6 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img @ 2016-06-14 10:08 Denis V. Lunev 2016-06-14 10:08 ` [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img Denis V. Lunev 0 siblings, 1 reply; 16+ messages in thread From: Denis V. Lunev @ 2016-06-14 10:08 UTC (permalink / raw) To: qemu-devel, qemu-block Cc: eblake, Denis V. Lunev, Paolo Bonzini, Stefan Hajnoczi, Kevin Wolf Changes from v5: - added missed hunk into patch #7 Changes from v4: - synced help descriprion for --trace with man for qemu.1/qemu-img.1/qemu-nbd.8 - moved @findex from qemu-option-trace.texi Changes from v3: - fixed difference in help/man for qemu-img/qemu-nbd - created separate .texi to contain trace description, proper dependency is added to makefile - added --version/--help description to qemu-img - fixed crash induced by new option processing scheme in qemu-img which has happened when invoked as './qemu-img -K' Changes from v2: - tweaked man-pages of qemu-nbd/qemu-img - added support for qemu-img (patches 4-5 as suggested) Changes from v1: - fixed nits found by Eric Signed-off-by: Denis V. Lunev <den@openvz.org> CC: Eric Blake <eblake@redhat.com> CC: Paolo Bonzini <pbonzini@redhat.com> CC: Stefan Hajnoczi <stefanha@redhat.com> CC: Kevin Wolf <kwolf@redhat.com> Denis V. Lunev (7): doc: move text describing --trace to specific .texi file doc: sync help descriprion for --trace with man for qemu.1 trace: move qemu_trace_opts to trace/control.c trace: enable tracing in qemu-io trace: enable tracing in qemu-nbd qemu-img: move common options parsing before commands processing trace: enable tracing in qemu-img Makefile | 7 ++++--- qemu-img.c | 55 ++++++++++++++++++++++++++++++++++++++------------ qemu-img.texi | 13 +++++++++++- qemu-io.c | 17 ++++++++++++---- qemu-nbd.c | 18 ++++++++++++++++- qemu-nbd.texi | 3 +++ qemu-option-trace.texi | 25 +++++++++++++++++++++++ qemu-options.hx | 29 ++------------------------ trace/control.c | 44 +++++++++++++++++++++++++++++++++++++++- trace/control.h | 24 ++++++++++++---------- vl.c | 37 +-------------------------------- 11 files changed, 175 insertions(+), 97 deletions(-) create mode 100644 qemu-option-trace.texi -- 2.1.4 ^ permalink raw reply [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img 2016-06-14 10:08 [Qemu-devel] [PATCH v6 " Denis V. Lunev @ 2016-06-14 10:08 ` Denis V. Lunev 2016-06-14 21:51 ` Eric Blake 0 siblings, 1 reply; 16+ messages in thread From: Denis V. Lunev @ 2016-06-14 10:08 UTC (permalink / raw) To: qemu-devel, qemu-block Cc: eblake, Denis V. Lunev, Paolo Bonzini, Stefan Hajnoczi, Kevin Wolf The command will work this way: qemu-img --trace qcow2* create -f qcow2 1.img 64G Signed-off-by: Denis V. Lunev <den@openvz.org> Suggested by: Daniel P. Berrange <berrange@redhat.com> CC: Eric Blake <eblake@redhat.com> CC: Paolo Bonzini <pbonzini@redhat.com> CC: Stefan Hajnoczi <stefanha@redhat.com> CC: Kevin Wolf <kwolf@redhat.com> --- Makefile | 2 +- qemu-img.c | 18 +++++++++++++++++- qemu-img.texi | 3 +++ 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index a291b7b..d3cb014 100644 --- a/Makefile +++ b/Makefile @@ -566,7 +566,7 @@ qemu.1: qemu-doc.texi qemu-options.texi qemu-monitor.texi qemu-monitor-info.texi " GEN $@") qemu.1: qemu-option-trace.texi -qemu-img.1: qemu-img.texi qemu-img-cmds.texi +qemu-img.1: qemu-img.texi qemu-option-trace.texi qemu-img-cmds.texi $(call quiet-command, \ perl -Ww -- $(SRC_PATH)/scripts/texi2pod.pl $< qemu-img.pod && \ $(POD2MAN) --section=1 --center=" " --release=" " qemu-img.pod > $@, \ diff --git a/qemu-img.c b/qemu-img.c index b4217e4..0ff13f8 100644 --- a/qemu-img.c +++ b/qemu-img.c @@ -32,6 +32,7 @@ #include "qemu/config-file.h" #include "qemu/option.h" #include "qemu/error-report.h" +#include "qemu/log.h" #include "qom/object_interfaces.h" #include "sysemu/sysemu.h" #include "sysemu/block-backend.h" @@ -39,6 +40,7 @@ #include "block/blockjob.h" #include "block/qapi.h" #include "crypto/init.h" +#include "trace/control.h" #include <getopt.h> #define QEMU_IMG_VERSION "qemu-img version " QEMU_VERSION QEMU_PKGVERSION \ @@ -96,6 +98,8 @@ static void QEMU_NORETURN help(void) "\n" " '-h', '--help' display this help and exit\n" " '-V', '--version' output version information and exit\n" + " '-T', '--trace' [[enable=]<pattern>][,events=<file>][,file=<file>]\n" + " specify tracing options\n" "\n" "Command syntax:\n" #define DEF(option, callback, arg_string) \ @@ -3806,10 +3810,12 @@ int main(int argc, char **argv) const img_cmd_t *cmd; const char *cmdname; Error *local_error = NULL; + char *trace_file = NULL; int c; static const struct option long_options[] = { {"help", no_argument, 0, 'h'}, {"version", no_argument, 0, 'V'}, + {"trace", required_argument, NULL, 'T'}, {0, 0, 0, 0} }; @@ -3835,8 +3841,9 @@ int main(int argc, char **argv) qemu_add_opts(&qemu_object_opts); qemu_add_opts(&qemu_source_opts); + qemu_add_opts(&qemu_trace_opts); - while ((c = getopt_long(argc, argv, "+hV", long_options, NULL)) != -1) { + while ((c = getopt_long(argc, argv, "+hVT:", long_options, NULL)) != -1) { switch (c) { case 'h': help(); @@ -3844,6 +3851,9 @@ int main(int argc, char **argv) case 'V': printf(QEMU_IMG_VERSION); return 0; + case 'T': + trace_file = trace_opt_parse(optarg, trace_file); + break; } } @@ -3857,6 +3867,12 @@ int main(int argc, char **argv) argv += optind; optind = 1; + if (!trace_init_backends()) { + exit(1); + } + trace_init_file(trace_file); + qemu_set_log(LOG_TRACE); + /* find the command */ for (cmd = img_cmds; cmd->name != NULL; cmd++) { if (!strcmp(cmdname, cmd->name)) { diff --git a/qemu-img.texi b/qemu-img.texi index f1b874d..449a19c 100644 --- a/qemu-img.texi +++ b/qemu-img.texi @@ -22,6 +22,9 @@ Standard options: Display this help and exit @item -V, --version Display version information and exit +@item -T, --trace [[enable=]@var{pattern}][,events=@var{file}][,file=@var{file}] +@findex --trace +@include qemu-option-trace.texi @end table The following commands are supported: -- 2.1.4 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* Re: [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img 2016-06-14 10:08 ` [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img Denis V. Lunev @ 2016-06-14 21:51 ` Eric Blake 0 siblings, 0 replies; 16+ messages in thread From: Eric Blake @ 2016-06-14 21:51 UTC (permalink / raw) To: Denis V. Lunev, qemu-devel, qemu-block Cc: Paolo Bonzini, Stefan Hajnoczi, Kevin Wolf [-- Attachment #1: Type: text/plain, Size: 732 bytes --] On 06/14/2016 04:08 AM, Denis V. Lunev wrote: > The command will work this way: > qemu-img --trace qcow2* create -f qcow2 1.img 64G > > Signed-off-by: Denis V. Lunev <den@openvz.org> > Suggested by: Daniel P. Berrange <berrange@redhat.com> > CC: Eric Blake <eblake@redhat.com> > CC: Paolo Bonzini <pbonzini@redhat.com> > CC: Stefan Hajnoczi <stefanha@redhat.com> > CC: Kevin Wolf <kwolf@redhat.com> > --- > Makefile | 2 +- > qemu-img.c | 18 +++++++++++++++++- > qemu-img.texi | 3 +++ > 3 files changed, 21 insertions(+), 2 deletions(-) > Reviewed-by: Eric Blake <eblake@redhat.com> -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 604 bytes --] ^ permalink raw reply [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH v7 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img @ 2016-06-16 7:15 Denis V. Lunev 2016-06-16 7:15 ` [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img Denis V. Lunev 0 siblings, 1 reply; 16+ messages in thread From: Denis V. Lunev @ 2016-06-16 7:15 UTC (permalink / raw) To: qemu-devel, qemu-block; +Cc: den, Paolo Bonzini, Stefan Hajnoczi, Kevin Wolf Changes from v6: - changed order of patches 1 & 2 Changes from v5: - added missed hunk into patch #7 Changes from v4: - synced help descriprion for --trace with man for qemu.1/qemu-img.1/qemu-nbd.8 - moved @findex from qemu-option-trace.texi Changes from v3: - fixed difference in help/man for qemu-img/qemu-nbd - created separate .texi to contain trace description, proper dependency is added to makefile - added --version/--help description to qemu-img - fixed crash induced by new option processing scheme in qemu-img which has happened when invoked as './qemu-img -K' Changes from v2: - tweaked man-pages of qemu-nbd/qemu-img - added support for qemu-img (patches 4-5 as suggested) Changes from v1: - fixed nits found by Eric Signed-off-by: Denis V. Lunev <den@openvz.org> Reviewed-by: Eric Blake <eblake@redhat.com> CC: Paolo Bonzini <pbonzini@redhat.com> CC: Stefan Hajnoczi <stefanha@redhat.com> CC: Kevin Wolf <kwolf@redhat.com> Denis V. Lunev (7): doc: sync help descriprion for --trace with man for qemu.1 doc: move text describing --trace to specific .texi file trace: move qemu_trace_opts to trace/control.c trace: enable tracing in qemu-io trace: enable tracing in qemu-nbd qemu-img: move common options parsing before commands processing trace: enable tracing in qemu-img Makefile | 7 ++++--- qemu-img.c | 55 ++++++++++++++++++++++++++++++++++++++++++------------- qemu-img.texi | 13 ++++++++++++- qemu-io.c | 17 +++++++++++++---- qemu-nbd.c | 18 +++++++++++++++++- qemu-nbd.texi | 3 +++ qemu-options.hx | 29 ++--------------------------- trace/control.c | 44 +++++++++++++++++++++++++++++++++++++++++++- trace/control.h | 24 +++++++++++++----------- vl.c | 37 +------------------------------------ 10 files changed, 150 insertions(+), 97 deletions(-) -- 2.1.4 ^ permalink raw reply [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img 2016-06-16 7:15 [Qemu-devel] [PATCH v7 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img Denis V. Lunev @ 2016-06-16 7:15 ` Denis V. Lunev 2016-06-17 13:55 ` Stefan Hajnoczi 0 siblings, 1 reply; 16+ messages in thread From: Denis V. Lunev @ 2016-06-16 7:15 UTC (permalink / raw) To: qemu-devel, qemu-block; +Cc: den, Paolo Bonzini, Stefan Hajnoczi, Kevin Wolf The command will work this way: qemu-img --trace qcow2* create -f qcow2 1.img 64G Signed-off-by: Denis V. Lunev <den@openvz.org> Suggested by: Daniel P. Berrange <berrange@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> CC: Paolo Bonzini <pbonzini@redhat.com> CC: Stefan Hajnoczi <stefanha@redhat.com> CC: Kevin Wolf <kwolf@redhat.com> --- Makefile | 2 +- qemu-img.c | 18 +++++++++++++++++- qemu-img.texi | 3 +++ 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index a291b7b..d3cb014 100644 --- a/Makefile +++ b/Makefile @@ -566,7 +566,7 @@ qemu.1: qemu-doc.texi qemu-options.texi qemu-monitor.texi qemu-monitor-info.texi " GEN $@") qemu.1: qemu-option-trace.texi -qemu-img.1: qemu-img.texi qemu-img-cmds.texi +qemu-img.1: qemu-img.texi qemu-option-trace.texi qemu-img-cmds.texi $(call quiet-command, \ perl -Ww -- $(SRC_PATH)/scripts/texi2pod.pl $< qemu-img.pod && \ $(POD2MAN) --section=1 --center=" " --release=" " qemu-img.pod > $@, \ diff --git a/qemu-img.c b/qemu-img.c index b4217e4..0ff13f8 100644 --- a/qemu-img.c +++ b/qemu-img.c @@ -32,6 +32,7 @@ #include "qemu/config-file.h" #include "qemu/option.h" #include "qemu/error-report.h" +#include "qemu/log.h" #include "qom/object_interfaces.h" #include "sysemu/sysemu.h" #include "sysemu/block-backend.h" @@ -39,6 +40,7 @@ #include "block/blockjob.h" #include "block/qapi.h" #include "crypto/init.h" +#include "trace/control.h" #include <getopt.h> #define QEMU_IMG_VERSION "qemu-img version " QEMU_VERSION QEMU_PKGVERSION \ @@ -96,6 +98,8 @@ static void QEMU_NORETURN help(void) "\n" " '-h', '--help' display this help and exit\n" " '-V', '--version' output version information and exit\n" + " '-T', '--trace' [[enable=]<pattern>][,events=<file>][,file=<file>]\n" + " specify tracing options\n" "\n" "Command syntax:\n" #define DEF(option, callback, arg_string) \ @@ -3806,10 +3810,12 @@ int main(int argc, char **argv) const img_cmd_t *cmd; const char *cmdname; Error *local_error = NULL; + char *trace_file = NULL; int c; static const struct option long_options[] = { {"help", no_argument, 0, 'h'}, {"version", no_argument, 0, 'V'}, + {"trace", required_argument, NULL, 'T'}, {0, 0, 0, 0} }; @@ -3835,8 +3841,9 @@ int main(int argc, char **argv) qemu_add_opts(&qemu_object_opts); qemu_add_opts(&qemu_source_opts); + qemu_add_opts(&qemu_trace_opts); - while ((c = getopt_long(argc, argv, "+hV", long_options, NULL)) != -1) { + while ((c = getopt_long(argc, argv, "+hVT:", long_options, NULL)) != -1) { switch (c) { case 'h': help(); @@ -3844,6 +3851,9 @@ int main(int argc, char **argv) case 'V': printf(QEMU_IMG_VERSION); return 0; + case 'T': + trace_file = trace_opt_parse(optarg, trace_file); + break; } } @@ -3857,6 +3867,12 @@ int main(int argc, char **argv) argv += optind; optind = 1; + if (!trace_init_backends()) { + exit(1); + } + trace_init_file(trace_file); + qemu_set_log(LOG_TRACE); + /* find the command */ for (cmd = img_cmds; cmd->name != NULL; cmd++) { if (!strcmp(cmdname, cmd->name)) { diff --git a/qemu-img.texi b/qemu-img.texi index f1b874d..449a19c 100644 --- a/qemu-img.texi +++ b/qemu-img.texi @@ -22,6 +22,9 @@ Standard options: Display this help and exit @item -V, --version Display version information and exit +@item -T, --trace [[enable=]@var{pattern}][,events=@var{file}][,file=@var{file}] +@findex --trace +@include qemu-option-trace.texi @end table The following commands are supported: -- 2.1.4 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* Re: [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img 2016-06-16 7:15 ` [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img Denis V. Lunev @ 2016-06-17 13:55 ` Stefan Hajnoczi 0 siblings, 0 replies; 16+ messages in thread From: Stefan Hajnoczi @ 2016-06-17 13:55 UTC (permalink / raw) To: Denis V. Lunev; +Cc: qemu-devel, qemu-block, Paolo Bonzini, Kevin Wolf [-- Attachment #1: Type: text/plain, Size: 651 bytes --] On Thu, Jun 16, 2016 at 10:15:12AM +0300, Denis V. Lunev wrote: > The command will work this way: > qemu-img --trace qcow2* create -f qcow2 1.img 64G > > Signed-off-by: Denis V. Lunev <den@openvz.org> > Suggested by: Daniel P. Berrange <berrange@redhat.com> > Reviewed-by: Eric Blake <eblake@redhat.com> > CC: Paolo Bonzini <pbonzini@redhat.com> > CC: Stefan Hajnoczi <stefanha@redhat.com> > CC: Kevin Wolf <kwolf@redhat.com> > --- > Makefile | 2 +- > qemu-img.c | 18 +++++++++++++++++- > qemu-img.texi | 3 +++ > 3 files changed, 21 insertions(+), 2 deletions(-) Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 473 bytes --] ^ permalink raw reply [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH v8 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img @ 2016-06-17 13:48 Denis V. Lunev 2016-06-17 13:48 ` [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img Denis V. Lunev 0 siblings, 1 reply; 16+ messages in thread From: Denis V. Lunev @ 2016-06-17 13:48 UTC (permalink / raw) To: qemu-devel, qemu-block; +Cc: den, Paolo Bonzini, Stefan Hajnoczi, Kevin Wolf Changes from v6: - changed order of patches 1 & 2 Changes from v5: - added missed hunk into patch #7 Changes from v4: - synced help descriprion for --trace with man for qemu.1/qemu-img.1/qemu-nbd.8 - moved @findex from qemu-option-trace.texi Changes from v3: - fixed difference in help/man for qemu-img/qemu-nbd - created separate .texi to contain trace description, proper dependency is added to makefile - added --version/--help description to qemu-img - fixed crash induced by new option processing scheme in qemu-img which has happened when invoked as './qemu-img -K' Changes from v2: - tweaked man-pages of qemu-nbd/qemu-img - added support for qemu-img (patches 4-5 as suggested) Changes from v1: - fixed nits found by Eric Signed-off-by: Denis V. Lunev <den@openvz.org> Reviewed-by: Eric Blake <eblake@redhat.com> CC: Paolo Bonzini <pbonzini@redhat.com> CC: Stefan Hajnoczi <stefanha@redhat.com> CC: Kevin Wolf <kwolf@redhat.com> Denis V. Lunev (7): doc: sync help descriprion for --trace with man for qemu.1 doc: move text describing --trace to specific .texi file trace: move qemu_trace_opts to trace/control.c trace: enable tracing in qemu-io trace: enable tracing in qemu-nbd qemu-img: move common options parsing before commands processing trace: enable tracing in qemu-img Makefile | 7 ++++--- qemu-img.c | 55 ++++++++++++++++++++++++++++++++++++++------------ qemu-img.texi | 13 +++++++++++- qemu-io.c | 17 ++++++++++++---- qemu-nbd.c | 18 ++++++++++++++++- qemu-nbd.texi | 3 +++ qemu-option-trace.texi | 25 +++++++++++++++++++++++ qemu-options.hx | 29 ++------------------------ trace/control.c | 44 +++++++++++++++++++++++++++++++++++++++- trace/control.h | 24 ++++++++++++---------- vl.c | 37 +-------------------------------- 11 files changed, 175 insertions(+), 97 deletions(-) create mode 100644 qemu-option-trace.texi -- 2.1.4 ^ permalink raw reply [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img 2016-06-17 13:48 [Qemu-devel] [PATCH v8 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img Denis V. Lunev @ 2016-06-17 13:48 ` Denis V. Lunev 0 siblings, 0 replies; 16+ messages in thread From: Denis V. Lunev @ 2016-06-17 13:48 UTC (permalink / raw) To: qemu-devel, qemu-block; +Cc: den, Paolo Bonzini, Stefan Hajnoczi, Kevin Wolf The command will work this way: qemu-img --trace qcow2* create -f qcow2 1.img 64G Signed-off-by: Denis V. Lunev <den@openvz.org> Suggested by: Daniel P. Berrange <berrange@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> CC: Paolo Bonzini <pbonzini@redhat.com> CC: Stefan Hajnoczi <stefanha@redhat.com> CC: Kevin Wolf <kwolf@redhat.com> --- Makefile | 2 +- qemu-img.c | 18 +++++++++++++++++- qemu-img.texi | 3 +++ 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index f9d369b..2b00a37 100644 --- a/Makefile +++ b/Makefile @@ -566,7 +566,7 @@ qemu.1: qemu-doc.texi qemu-options.texi qemu-monitor.texi qemu-monitor-info.texi " GEN $@") qemu.1: qemu-option-trace.texi -qemu-img.1: qemu-img.texi qemu-img-cmds.texi +qemu-img.1: qemu-img.texi qemu-option-trace.texi qemu-img-cmds.texi $(call quiet-command, \ perl -Ww -- $(SRC_PATH)/scripts/texi2pod.pl $< qemu-img.pod && \ $(POD2MAN) --section=1 --center=" " --release=" " qemu-img.pod > $@, \ diff --git a/qemu-img.c b/qemu-img.c index 2194c2d..0b013f2 100644 --- a/qemu-img.c +++ b/qemu-img.c @@ -32,6 +32,7 @@ #include "qemu/config-file.h" #include "qemu/option.h" #include "qemu/error-report.h" +#include "qemu/log.h" #include "qom/object_interfaces.h" #include "sysemu/sysemu.h" #include "sysemu/block-backend.h" @@ -39,6 +40,7 @@ #include "block/blockjob.h" #include "block/qapi.h" #include "crypto/init.h" +#include "trace/control.h" #include <getopt.h> #define QEMU_IMG_VERSION "qemu-img version " QEMU_VERSION QEMU_PKGVERSION \ @@ -96,6 +98,8 @@ static void QEMU_NORETURN help(void) "\n" " '-h', '--help' display this help and exit\n" " '-V', '--version' output version information and exit\n" + " '-T', '--trace' [[enable=]<pattern>][,events=<file>][,file=<file>]\n" + " specify tracing options\n" "\n" "Command syntax:\n" #define DEF(option, callback, arg_string) \ @@ -3806,10 +3810,12 @@ int main(int argc, char **argv) const img_cmd_t *cmd; const char *cmdname; Error *local_error = NULL; + char *trace_file = NULL; int c; static const struct option long_options[] = { {"help", no_argument, 0, 'h'}, {"version", no_argument, 0, 'V'}, + {"trace", required_argument, NULL, 'T'}, {0, 0, 0, 0} }; @@ -3835,8 +3841,9 @@ int main(int argc, char **argv) qemu_add_opts(&qemu_object_opts); qemu_add_opts(&qemu_source_opts); + qemu_add_opts(&qemu_trace_opts); - while ((c = getopt_long(argc, argv, "+hV", long_options, NULL)) != -1) { + while ((c = getopt_long(argc, argv, "+hVT:", long_options, NULL)) != -1) { switch (c) { case 'h': help(); @@ -3844,6 +3851,9 @@ int main(int argc, char **argv) case 'V': printf(QEMU_IMG_VERSION); return 0; + case 'T': + trace_file = trace_opt_parse(optarg, trace_file); + break; } } @@ -3857,6 +3867,12 @@ int main(int argc, char **argv) argv += optind; optind = 1; + if (!trace_init_backends()) { + exit(1); + } + trace_init_file(trace_file); + qemu_set_log(LOG_TRACE); + /* find the command */ for (cmd = img_cmds; cmd->name != NULL; cmd++) { if (!strcmp(cmdname, cmd->name)) { diff --git a/qemu-img.texi b/qemu-img.texi index f1b874d..449a19c 100644 --- a/qemu-img.texi +++ b/qemu-img.texi @@ -22,6 +22,9 @@ Standard options: Display this help and exit @item -V, --version Display version information and exit +@item -T, --trace [[enable=]@var{pattern}][,events=@var{file}][,file=@var{file}] +@findex --trace +@include qemu-option-trace.texi @end table The following commands are supported: -- 2.1.4 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH v9 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img @ 2016-06-17 14:44 Denis V. Lunev 2016-06-17 14:44 ` [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img Denis V. Lunev 0 siblings, 1 reply; 16+ messages in thread From: Denis V. Lunev @ 2016-06-17 14:44 UTC (permalink / raw) To: qemu-devel, qemu-block Cc: stefanha, Denis V. Lunev, Paolo Bonzini, Kevin Wolf Changes from v8: - fixed comment in patch 3 - changed stub for trace_opt_parse() Changes from v7: - added missed qemu-option-trace.texi Changes from v6: - changed order of patches 1 & 2 Changes from v5: - added missed hunk into patch #7 Changes from v4: - synced help descriprion for --trace with man for qemu.1/qemu-img.1/qemu-nbd.8 - moved @findex from qemu-option-trace.texi Changes from v3: - fixed difference in help/man for qemu-img/qemu-nbd - created separate .texi to contain trace description, proper dependency is added to makefile - added --version/--help description to qemu-img - fixed crash induced by new option processing scheme in qemu-img which has happened when invoked as './qemu-img -K' Changes from v2: - tweaked man-pages of qemu-nbd/qemu-img - added support for qemu-img (patches 4-5 as suggested) Changes from v1: - fixed nits found by Eric Signed-off-by: Denis V. Lunev <den@openvz.org> Reviewed-by: Eric Blake <eblake@redhat.com> CC: Paolo Bonzini <pbonzini@redhat.com> CC: Stefan Hajnoczi <stefanha@redhat.com> CC: Kevin Wolf <kwolf@redhat.com> Denis V. Lunev (7): doc: sync help descriprion for --trace with man for qemu.1 doc: move text describing --trace to specific .texi file trace: move qemu_trace_opts to trace/control.c trace: enable tracing in qemu-io trace: enable tracing in qemu-nbd qemu-img: move common options parsing before commands processing trace: enable tracing in qemu-img Makefile | 7 ++++--- qemu-img.c | 56 ++++++++++++++++++++++++++++++++++++++------------ qemu-img.texi | 13 +++++++++++- qemu-io.c | 18 ++++++++++++---- qemu-nbd.c | 19 ++++++++++++++++- qemu-nbd.texi | 3 +++ qemu-option-trace.texi | 25 ++++++++++++++++++++++ qemu-options.hx | 29 ++------------------------ trace/control.c | 42 ++++++++++++++++++++++++++++++++++++- trace/control.h | 25 ++++++++++++---------- vl.c | 38 ++-------------------------------- 11 files changed, 178 insertions(+), 97 deletions(-) create mode 100644 qemu-option-trace.texi -- 2.1.4 ^ permalink raw reply [flat|nested] 16+ messages in thread
* [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img 2016-06-17 14:44 [Qemu-devel] [PATCH v9 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img Denis V. Lunev @ 2016-06-17 14:44 ` Denis V. Lunev 2016-06-20 16:26 ` Eric Blake 0 siblings, 1 reply; 16+ messages in thread From: Denis V. Lunev @ 2016-06-17 14:44 UTC (permalink / raw) To: qemu-devel, qemu-block Cc: stefanha, Denis V. Lunev, Paolo Bonzini, Kevin Wolf The command will work this way: qemu-img --trace qcow2* create -f qcow2 1.img 64G Signed-off-by: Denis V. Lunev <den@openvz.org> Suggested by: Daniel P. Berrange <berrange@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> CC: Paolo Bonzini <pbonzini@redhat.com> CC: Kevin Wolf <kwolf@redhat.com> --- Makefile | 2 +- qemu-img.c | 19 ++++++++++++++++++- qemu-img.texi | 3 +++ 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index f9d369b..2b00a37 100644 --- a/Makefile +++ b/Makefile @@ -566,7 +566,7 @@ qemu.1: qemu-doc.texi qemu-options.texi qemu-monitor.texi qemu-monitor-info.texi " GEN $@") qemu.1: qemu-option-trace.texi -qemu-img.1: qemu-img.texi qemu-img-cmds.texi +qemu-img.1: qemu-img.texi qemu-option-trace.texi qemu-img-cmds.texi $(call quiet-command, \ perl -Ww -- $(SRC_PATH)/scripts/texi2pod.pl $< qemu-img.pod && \ $(POD2MAN) --section=1 --center=" " --release=" " qemu-img.pod > $@, \ diff --git a/qemu-img.c b/qemu-img.c index 2194c2d..3322a1e 100644 --- a/qemu-img.c +++ b/qemu-img.c @@ -32,6 +32,7 @@ #include "qemu/config-file.h" #include "qemu/option.h" #include "qemu/error-report.h" +#include "qemu/log.h" #include "qom/object_interfaces.h" #include "sysemu/sysemu.h" #include "sysemu/block-backend.h" @@ -39,6 +40,7 @@ #include "block/blockjob.h" #include "block/qapi.h" #include "crypto/init.h" +#include "trace/control.h" #include <getopt.h> #define QEMU_IMG_VERSION "qemu-img version " QEMU_VERSION QEMU_PKGVERSION \ @@ -96,6 +98,8 @@ static void QEMU_NORETURN help(void) "\n" " '-h', '--help' display this help and exit\n" " '-V', '--version' output version information and exit\n" + " '-T', '--trace' [[enable=]<pattern>][,events=<file>][,file=<file>]\n" + " specify tracing options\n" "\n" "Command syntax:\n" #define DEF(option, callback, arg_string) \ @@ -3806,10 +3810,12 @@ int main(int argc, char **argv) const img_cmd_t *cmd; const char *cmdname; Error *local_error = NULL; + char *trace_file = NULL; int c; static const struct option long_options[] = { {"help", no_argument, 0, 'h'}, {"version", no_argument, 0, 'V'}, + {"trace", required_argument, NULL, 'T'}, {0, 0, 0, 0} }; @@ -3835,8 +3841,9 @@ int main(int argc, char **argv) qemu_add_opts(&qemu_object_opts); qemu_add_opts(&qemu_source_opts); + qemu_add_opts(&qemu_trace_opts); - while ((c = getopt_long(argc, argv, "+hV", long_options, NULL)) != -1) { + while ((c = getopt_long(argc, argv, "+hVT:", long_options, NULL)) != -1) { switch (c) { case 'h': help(); @@ -3844,6 +3851,10 @@ int main(int argc, char **argv) case 'V': printf(QEMU_IMG_VERSION); return 0; + case 'T': + g_free(trace_file); + trace_file = trace_opt_parse(optarg); + break; } } @@ -3857,6 +3868,12 @@ int main(int argc, char **argv) argv += optind; optind = 1; + if (!trace_init_backends()) { + exit(1); + } + trace_init_file(trace_file); + qemu_set_log(LOG_TRACE); + /* find the command */ for (cmd = img_cmds; cmd->name != NULL; cmd++) { if (!strcmp(cmdname, cmd->name)) { diff --git a/qemu-img.texi b/qemu-img.texi index f1b874d..449a19c 100644 --- a/qemu-img.texi +++ b/qemu-img.texi @@ -22,6 +22,9 @@ Standard options: Display this help and exit @item -V, --version Display version information and exit +@item -T, --trace [[enable=]@var{pattern}][,events=@var{file}][,file=@var{file}] +@findex --trace +@include qemu-option-trace.texi @end table The following commands are supported: -- 2.1.4 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* Re: [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img 2016-06-17 14:44 ` [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img Denis V. Lunev @ 2016-06-20 16:26 ` Eric Blake 0 siblings, 0 replies; 16+ messages in thread From: Eric Blake @ 2016-06-20 16:26 UTC (permalink / raw) To: Denis V. Lunev, qemu-devel, qemu-block Cc: Kevin Wolf, stefanha, Paolo Bonzini [-- Attachment #1: Type: text/plain, Size: 822 bytes --] On 06/17/2016 08:44 AM, Denis V. Lunev wrote: > The command will work this way: > qemu-img --trace qcow2* create -f qcow2 1.img 64G It might be better to write the example as: qemu-img --trace "qcow2*" create -f qcow2 1.img 64G if only to make it obvious that we don't want the shell to expand globs based on file names in the current directory, but are passing a literal '*' to qemu-img. > > Signed-off-by: Denis V. Lunev <den@openvz.org> > Suggested by: Daniel P. Berrange <berrange@redhat.com> > Reviewed-by: Eric Blake <eblake@redhat.com> > Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> > CC: Paolo Bonzini <pbonzini@redhat.com> > CC: Kevin Wolf <kwolf@redhat.com> > --- -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 604 bytes --] ^ permalink raw reply [flat|nested] 16+ messages in thread
end of thread, other threads:[~2016-06-20 16:26 UTC | newest] Thread overview: 16+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2016-06-14 9:16 [Qemu-devel] [PATCH v5 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img Denis V. Lunev 2016-06-14 9:16 ` [Qemu-devel] [PATCH 1/7] doc: move text describing --trace to specific .texi file Denis V. Lunev 2016-06-14 9:16 ` [Qemu-devel] [PATCH 2/7] doc: sync help descriprion for --trace with man for qemu.1 Denis V. Lunev 2016-06-14 9:16 ` [Qemu-devel] [PATCH 3/7] trace: move qemu_trace_opts to trace/control.c Denis V. Lunev 2016-06-14 9:16 ` [Qemu-devel] [PATCH 4/7] trace: enable tracing in qemu-io Denis V. Lunev 2016-06-14 9:16 ` [Qemu-devel] [PATCH 5/7] trace: enable tracing in qemu-nbd Denis V. Lunev 2016-06-14 9:16 ` [Qemu-devel] [PATCH 6/7] qemu-img: move common options parsing before commands processing Denis V. Lunev 2016-06-14 9:17 ` [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img Denis V. Lunev 2016-06-14 10:07 ` [Qemu-devel] [PATCH v5 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img Denis V. Lunev -- strict thread matches above, loose matches on Subject: below -- 2016-06-14 10:08 [Qemu-devel] [PATCH v6 " Denis V. Lunev 2016-06-14 10:08 ` [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img Denis V. Lunev 2016-06-14 21:51 ` Eric Blake 2016-06-16 7:15 [Qemu-devel] [PATCH v7 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img Denis V. Lunev 2016-06-16 7:15 ` [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img Denis V. Lunev 2016-06-17 13:55 ` Stefan Hajnoczi 2016-06-17 13:48 [Qemu-devel] [PATCH v8 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img Denis V. Lunev 2016-06-17 13:48 ` [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img Denis V. Lunev 2016-06-17 14:44 [Qemu-devel] [PATCH v9 0/7] trace: enable tracing in qemu-io/qemu-nbd/qemu-img Denis V. Lunev 2016-06-17 14:44 ` [Qemu-devel] [PATCH 7/7] trace: enable tracing in qemu-img Denis V. Lunev 2016-06-20 16:26 ` Eric Blake
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).