Daniel Bristot de Oliveira
30838fcd81
tracing/osnoise: Add OSNOISE_WORKLOAD option
The osnoise tracer is not only a tracer, and a set of tracepoints,
but also a workload dispatcher.
In preparation for having other workloads, e.g., in user-space,
add an option to avoid dispatching the workload.
By not dispatching the workload, the osnoise: tracepoints become
generic events to measure the execution time of *any* task on Linux.
For example:
# cd /sys/kernel/tracing/
# cat osnoise/options
DEFAULTS OSNOISE_WORKLOAD
# echo NO_OSNOISE_WORKLOAD > osnoise/options
# cat osnoise/options
NO_DEFAULTS NO_OSNOISE_WORKLOAD
# echo osnoise > set_event
# echo osnoise > current_tracer
# tail -8 trace
make-94722 [002] d..3. 1371.794507: thread_noise: make:94722 start 1371.794302286 duration 200897 ns
sh-121042 [020] d..3. 1371.794534: thread_noise: sh:121042 start 1371.781610976 duration 8943683 ns
make-121097 [005] d..3. 1371.794542: thread_noise: make:121097 start 1371.794481522 duration 60444 ns
<...>-40 [005] d..3. 1371.794550: thread_noise: migration/5:40 start 1371.794542256 duration 7154 ns
<idle>-0 [018] dNh2. 1371.794554: irq_noise: reschedule:253 start 1371.794553547 duration 40 ns
<idle>-0 [018] dNh2. 1371.794561: irq_noise: local_timer:236 start 1371.794556222 duration 4890 ns
<idle>-0 [018] .Ns2. 1371.794563: softirq_noise: SCHED:7 start 1371.794561803 duration 992 ns
<idle>-0 [018] d..3. 1371.794566: thread_noise: swapper/18:0 start 1371.781368110 duration 13191798 ns
In preparation for the rtla exec_time tracer/tool and
rtla osnoise --user option.
Link: https://lkml.kernel.org/r/f5cfbd37aefd419eefe9243b4d2fc38ed5753fe4.1668692096.git.bristot@kernel.org
Cc: Daniel Bristot de Oliveira <bristot@kernel.org>
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Daniel Bristot de Oliveira <bristot@kernel.org>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
2022-11-23 19:08:31 -05:00
..
2022-09-26 18:10:51 -04:00
2022-10-20 06:02:52 -07:00
2022-10-17 16:32:06 +02:00
2021-02-26 09:41:02 -08:00
2022-06-03 14:05:34 -07:00
2022-11-04 08:50:07 +09:00
2022-11-23 19:08:30 -05:00
2022-09-16 22:16:48 +02:00
2022-11-18 10:15:34 +09:00
2022-07-30 14:01:28 -04:00
2022-04-26 17:58:50 -04:00
2021-10-05 17:38:45 -04:00
2021-02-02 17:02:07 -05:00
2022-11-18 10:15:34 +09:00
2022-11-23 19:08:30 -05:00
2022-11-23 19:08:30 -05:00
2022-11-17 17:51:38 -05:00
2022-09-26 13:01:09 -04:00
2022-09-26 13:01:09 -04:00
2022-05-26 21:13:00 -04:00
2021-02-02 17:02:06 -05:00
2021-06-18 09:10:00 -04:00
2022-11-23 19:07:12 -05:00
2021-08-18 18:10:32 -04:00
2021-06-25 19:57:24 -04:00
2022-11-20 15:31:20 -08:00
2022-08-21 15:56:07 -04:00
2022-09-26 13:01:10 -04:00
2022-11-23 19:05:50 -05:00
2021-12-06 15:37:21 -05:00
2022-11-23 19:06:11 -05:00
2022-09-06 22:26:00 -04:00
2022-11-22 18:09:50 -05:00
2022-11-23 19:08:30 -05:00
2021-10-13 18:19:41 -04:00
2021-10-27 11:21:49 -04:00
2022-01-15 16:30:24 +02:00
2021-02-02 17:02:06 -05:00
2021-07-27 17:05:06 +01:00
2022-10-12 13:50:00 -04:00
2021-02-02 17:02:07 -05:00
2022-11-23 19:08:31 -05:00
2022-04-27 17:19:30 -04:00
2022-09-06 22:26:00 -04:00
2021-10-08 18:08:43 -04:00
2022-10-12 13:50:20 -04:00
2021-08-19 09:09:03 -04:00
2022-08-21 15:56:08 -04:00
2022-09-26 13:01:08 -04:00
2022-05-26 21:12:52 -04:00
2022-05-12 00:37:11 +02:00
2022-05-12 00:37:11 +02:00
2022-05-25 16:57:37 -04:00
2021-03-23 14:08:18 -04:00
2021-10-08 18:08:43 -04:00
2021-10-08 18:08:43 -04:00
2021-09-08 15:29:16 -04:00
2022-11-17 20:21:06 -05:00
2022-08-05 09:41:12 -07:00
2022-11-23 19:08:30 -05:00
2022-11-23 19:06:11 -05:00
2022-10-03 12:20:31 -04:00