rtla: Start the tracers after creating all instances
Group all start tracing after finishing creating all instances. The tracing instance starts first for the case of hitting a stop tracing while enabling other instances. The trace instance is the one with most valuable information. Link: https://lkml.kernel.org/r/67da7a703a56f75d7cd46568525145a65501a7e8.1686066600.git.bristot@kernel.org Cc: William White <chwhite@redhat.com> Cc: Jonathan Corbet <corbet@lwn.net> Tested-by: Juri Lelli <juri.lelli@redhat.com> Signed-off-by: Daniel Bristot de Oliveira <bristot@kernel.org> Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
This commit is contained in:
parent
2091336b9a
commit
57cf76ec64
@ -870,8 +870,6 @@ int osnoise_hist_main(int argc, char *argv[])
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
trace_instance_start(trace);
|
|
||||||
|
|
||||||
if (params->trace_output) {
|
if (params->trace_output) {
|
||||||
record = osnoise_init_trace_tool("osnoise");
|
record = osnoise_init_trace_tool("osnoise");
|
||||||
if (!record) {
|
if (!record) {
|
||||||
@ -885,9 +883,19 @@ int osnoise_hist_main(int argc, char *argv[])
|
|||||||
goto out_hist;
|
goto out_hist;
|
||||||
}
|
}
|
||||||
|
|
||||||
trace_instance_start(&record->trace);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Start the tracer here, after having set all instances.
|
||||||
|
*
|
||||||
|
* Let the trace instance start first for the case of hitting a stop
|
||||||
|
* tracing while enabling other instances. The trace instance is the
|
||||||
|
* one with most valuable information.
|
||||||
|
*/
|
||||||
|
if (params->trace_output)
|
||||||
|
trace_instance_start(&record->trace);
|
||||||
|
trace_instance_start(trace);
|
||||||
|
|
||||||
tool->start_time = time(NULL);
|
tool->start_time = time(NULL);
|
||||||
osnoise_hist_set_signals(params);
|
osnoise_hist_set_signals(params);
|
||||||
|
|
||||||
|
@ -697,8 +697,6 @@ int osnoise_top_main(int argc, char **argv)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
trace_instance_start(trace);
|
|
||||||
|
|
||||||
if (params->trace_output) {
|
if (params->trace_output) {
|
||||||
record = osnoise_init_trace_tool("osnoise");
|
record = osnoise_init_trace_tool("osnoise");
|
||||||
if (!record) {
|
if (!record) {
|
||||||
@ -711,10 +709,19 @@ int osnoise_top_main(int argc, char **argv)
|
|||||||
if (retval)
|
if (retval)
|
||||||
goto out_top;
|
goto out_top;
|
||||||
}
|
}
|
||||||
|
|
||||||
trace_instance_start(&record->trace);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Start the tracer here, after having set all instances.
|
||||||
|
*
|
||||||
|
* Let the trace instance start first for the case of hitting a stop
|
||||||
|
* tracing while enabling other instances. The trace instance is the
|
||||||
|
* one with most valuable information.
|
||||||
|
*/
|
||||||
|
if (params->trace_output)
|
||||||
|
trace_instance_start(&record->trace);
|
||||||
|
trace_instance_start(trace);
|
||||||
|
|
||||||
tool->start_time = time(NULL);
|
tool->start_time = time(NULL);
|
||||||
osnoise_top_set_signals(params);
|
osnoise_top_set_signals(params);
|
||||||
|
|
||||||
|
@ -922,8 +922,6 @@ int timerlat_hist_main(int argc, char *argv[])
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
trace_instance_start(trace);
|
|
||||||
|
|
||||||
if (params->trace_output) {
|
if (params->trace_output) {
|
||||||
record = osnoise_init_trace_tool("timerlat");
|
record = osnoise_init_trace_tool("timerlat");
|
||||||
if (!record) {
|
if (!record) {
|
||||||
@ -936,8 +934,6 @@ int timerlat_hist_main(int argc, char *argv[])
|
|||||||
if (retval)
|
if (retval)
|
||||||
goto out_hist;
|
goto out_hist;
|
||||||
}
|
}
|
||||||
|
|
||||||
trace_instance_start(&record->trace);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!params->no_aa) {
|
if (!params->no_aa) {
|
||||||
@ -956,10 +952,21 @@ int timerlat_hist_main(int argc, char *argv[])
|
|||||||
err_msg("Failed to enable timerlat tracer\n");
|
err_msg("Failed to enable timerlat tracer\n");
|
||||||
goto out_hist;
|
goto out_hist;
|
||||||
}
|
}
|
||||||
|
|
||||||
trace_instance_start(&aa->trace);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Start the tracers here, after having set all instances.
|
||||||
|
*
|
||||||
|
* Let the trace instance start first for the case of hitting a stop
|
||||||
|
* tracing while enabling other instances. The trace instance is the
|
||||||
|
* one with most valuable information.
|
||||||
|
*/
|
||||||
|
if (params->trace_output)
|
||||||
|
trace_instance_start(&record->trace);
|
||||||
|
if (!params->no_aa)
|
||||||
|
trace_instance_start(&aa->trace);
|
||||||
|
trace_instance_start(trace);
|
||||||
|
|
||||||
tool->start_time = time(NULL);
|
tool->start_time = time(NULL);
|
||||||
timerlat_hist_set_signals(params);
|
timerlat_hist_set_signals(params);
|
||||||
|
|
||||||
|
@ -743,8 +743,6 @@ int timerlat_top_main(int argc, char *argv[])
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
trace_instance_start(trace);
|
|
||||||
|
|
||||||
if (params->trace_output) {
|
if (params->trace_output) {
|
||||||
record = osnoise_init_trace_tool("timerlat");
|
record = osnoise_init_trace_tool("timerlat");
|
||||||
if (!record) {
|
if (!record) {
|
||||||
@ -757,8 +755,6 @@ int timerlat_top_main(int argc, char *argv[])
|
|||||||
if (retval)
|
if (retval)
|
||||||
goto out_top;
|
goto out_top;
|
||||||
}
|
}
|
||||||
|
|
||||||
trace_instance_start(&record->trace);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!params->no_aa) {
|
if (!params->no_aa) {
|
||||||
@ -785,11 +781,22 @@ int timerlat_top_main(int argc, char *argv[])
|
|||||||
err_msg("Failed to enable timerlat tracer\n");
|
err_msg("Failed to enable timerlat tracer\n");
|
||||||
goto out_top;
|
goto out_top;
|
||||||
}
|
}
|
||||||
|
|
||||||
trace_instance_start(&aa->trace);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Start the tracers here, after having set all instances.
|
||||||
|
*
|
||||||
|
* Let the trace instance start first for the case of hitting a stop
|
||||||
|
* tracing while enabling other instances. The trace instance is the
|
||||||
|
* one with most valuable information.
|
||||||
|
*/
|
||||||
|
if (params->trace_output)
|
||||||
|
trace_instance_start(&record->trace);
|
||||||
|
if (!params->no_aa && aa != top)
|
||||||
|
trace_instance_start(&aa->trace);
|
||||||
|
trace_instance_start(trace);
|
||||||
|
|
||||||
top->start_time = time(NULL);
|
top->start_time = time(NULL);
|
||||||
timerlat_top_set_signals(params);
|
timerlat_top_set_signals(params);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user