Markus Armbruster <arm...@redhat.com> writes: > dubo...@gmail.com writes: > >> From: Josh DuBois <j...@joshdubois.com> >> >> Tracing can be enabled at the command line or via the >> monitor. Command-line trace options are recorded during >> trace_opt_parse(), but tracing is not enabled until the various >> front-ends later call trace_init_file(). If the user passes a trace >> option on the command-line, remember that and enable tracing during >> trace_init_file(). Otherwise, trace_init_file() should record the >> trace file specified by the frontend and avoid enabling traces >> until the user requests them via the monitor. >> >> This fixes 1b7157be3a8c4300fc8044d40f4b2e64a152a1b4 and also >> db25d56c014aa1a96319c663e0a60346a223b31e, by allowing the user >> to enable traces on the command line and also avoiding >> unwanted trace-<pid> files when the user has not asked for them. >> >> Fixes: 1b7157be3a8c4300fc8044d40f4b2e64a152a1b4 >> Signed-off-by: Josh DuBois <j...@joshdubois.com> >> --- >> trace/control.c | 6 +++++- >> 1 file changed, 5 insertions(+), 1 deletion(-) >> >> diff --git a/trace/control.c b/trace/control.c >> index 6558b5c906..8f94f09444 100644 >> --- a/trace/control.c >> +++ b/trace/control.c >> @@ -39,6 +39,7 @@ static TraceEventGroup *event_groups; >> static size_t nevent_groups; >> static uint32_t next_id; >> static uint32_t next_vcpu_id; >> +static bool init_trace_on_startup; >> >> QemuOptsList qemu_trace_opts = { >> .name = "trace", >> @@ -225,7 +226,9 @@ void trace_init_file(const char *file) >> { >> #ifdef CONFIG_TRACE_SIMPLE >> st_set_trace_file(file); >> - st_set_trace_file_enabled(true); >> + if (init_trace_on_startup) { >> + st_set_trace_file_enabled(true); >> + } >> #elif defined CONFIG_TRACE_LOG >> /* >> * If both the simple and the log backends are enabled, "--trace file" >> @@ -299,6 +302,7 @@ char *trace_opt_parse(const char *optarg) >> } >> trace_init_events(qemu_opt_get(opts, "events")); >> trace_file = g_strdup(qemu_opt_get(opts, "file")); >> + init_trace_on_startup = true; >> qemu_opts_del(opts); >> >> return trace_file; > > Stops the littering for me. > > Stefan, please have a closer look.
Ping?