sphinx.addnodesdocument)}( rawsourcechildren]( translations LanguagesNode)}(hhh](h pending_xref)}(hhh]docutils.nodesTextChinese (Simplified)}parenthsba attributes}(ids]classes]names]dupnames]backrefs] refdomainstdreftypedoc reftarget-/translations/zh_CN/tools/rtla/common_optionsmodnameN classnameN refexplicitutagnamehhh ubh)}(hhh]hChinese (Traditional)}hh2sbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget-/translations/zh_TW/tools/rtla/common_optionsmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hItalian}hhFsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget-/translations/it_IT/tools/rtla/common_optionsmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hJapanese}hhZsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget-/translations/ja_JP/tools/rtla/common_optionsmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hKorean}hhnsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget-/translations/ko_KR/tools/rtla/common_optionsmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hSpanish}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget-/translations/sp_SP/tools/rtla/common_optionsmodnameN classnameN refexplicituh1hhh ubeh}(h]h ]h"]h$]h&]current_languageEnglishuh1h hh _documenthsourceNlineNubh paragraph)}(h**-c**, **--cpus** *cpu-list*h](hstrong)}(h**-c**h]h-c}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhubh, }(hhhhhNhNubh)}(h **--cpus**h]h--cpus}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhubh }(hhhhhNhNubhemphasis)}(h *cpu-list*h]hcpu-list}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhubeh}(h]h ]h"]h$]h&]uh1hhG/var/lib/git/docbuild/linux/Documentation/tools/rtla/common_options.rsthKhhhhubh block_quote)}(hBSet the osnoise tracer to run the sample threads in the cpu-list. h]h)}(hASet the osnoise tracer to run the sample threads in the cpu-list.h]hASet the osnoise tracer to run the sample threads in the cpu-list.}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhhubah}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh)}(h&**-H**, **--house-keeping** *cpu-list*h](h)}(h**-H**h]h-H}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhubh, }(hhhhhNhNubh)}(h**--house-keeping**h]h--house-keeping}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhubh }(hhhhhNhNubh)}(h *cpu-list*h]hcpu-list}(hj&hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhubeh}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh)}(h5Run rtla control threads only on the given cpu-list. h]h)}(h4Run rtla control threads only on the given cpu-list.h]h4Run rtla control threads only on the given cpu-list.}(hj>hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj:ubah}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh)}(h&**-d**, **--duration** *time[s|m|h|d]*h](h)}(h**-d**h]h-d}(hjVhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjRubh, }(hjRhhhNhNubh)}(h**--duration**h]h --duration}(hjhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjRubh }(hjRhhhNhNubh)}(h*time[s|m|h|d]*h]h time[s|m|h|d]}(hjzhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjRubeh}(h]h ]h"]h$]h&]uh1hhhhK hhhhubh)}(h!Set the duration of the session. h]h)}(h Set the duration of the session.h]h Set the duration of the session.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK hjubah}(h]h ]h"]h$]h&]uh1hhhhK hhhhubh)}(h**-D**, **--debug**h](h)}(h**-D**h]h-D}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh, }(hjhhhNhNubh)}(h **--debug**h]h--debug}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubeh}(h]h ]h"]h$]h&]uh1hhhhK hhhhubh)}(hPrint debug info. h]h)}(hPrint debug info.h]hPrint debug info.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh)}(h**-e**, **--event** *sys:event*h](h)}(h**-e**h]h-e}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh, }(hjhhhNhNubh)}(h **--event**h]h--event}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh }(hjhhhNhNubh)}(h *sys:event*h]h sys:event}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubeh}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh)}(hEnable an event in the trace (**-t**) session. The argument can be a specific event, e.g., **-e** *sched:sched_switch*, or all events of a system group, e.g., **-e** *sched*. Multiple **-e** are allowed. It is only active when **-t** or **-a** are set. h]h)}(hEnable an event in the trace (**-t**) session. The argument can be a specific event, e.g., **-e** *sched:sched_switch*, or all events of a system group, e.g., **-e** *sched*. Multiple **-e** are allowed. It is only active when **-t** or **-a** are set.h](hEnable an event in the trace (}(hj(hhhNhNubh)}(h**-t**h]h-t}(hj0hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj(ubh7) session. The argument can be a specific event, e.g., }(hj(hhhNhNubh)}(h**-e**h]h-e}(hjBhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj(ubh }(hj(hhhNhNubh)}(h*sched:sched_switch*h]hsched:sched_switch}(hjThhhNhNubah}(h]h ]h"]h$]h&]uh1hhj(ubh), or all events of a system group, e.g., }(hj(hhhNhNubh)}(h**-e**h]h-e}(hjfhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj(ubh }hj(sbh)}(h*sched*h]hsched}(hjxhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj(ubh . Multiple }(hj(hhhNhNubh)}(h**-e**h]h-e}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj(ubh% are allowed. It is only active when }(hj(hhhNhNubh)}(h**-t**h]h-t}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj(ubh or }(hj(hhhNhNubh)}(h**-a**h]h-a}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj(ubh are set.}(hj(hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj$ubah}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh)}(h**--filter** **h](h)}(h **--filter**h]h--filter}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh }(hjhhhNhNubh)}(h **h]h}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubeh}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh)}(hFilter the previous **-e** *sys:event* event with **. For further information about event filtering see https://www.kernel.org/doc/html/latest/trace/events.html#event-filtering. h]h)}(hFilter the previous **-e** *sys:event* event with **. For further information about event filtering see https://www.kernel.org/doc/html/latest/trace/events.html#event-filtering.h](hFilter the previous }(hjhhhNhNubh)}(h**-e**h]h-e}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh }(hjhhhNhNubh)}(h *sys:event*h]h sys:event}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh event with }(hjhhhNhNubh)}(h **h]h}(hj&hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh4. For further information about event filtering see }(hjhhhNhNubh reference)}(hHhttps://www.kernel.org/doc/html/latest/trace/events.html#event-filteringh]hHhttps://www.kernel.org/doc/html/latest/trace/events.html#event-filtering}(hj:hhhNhNubah}(h]h ]h"]h$]h&]refurij<uh1j8hjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1hhhhKhhhhubhdefinition_list)}(hhh]hdefinition_list_item)}(hXj**--trigger** ** Enable a trace event trigger to the previous **-e** *sys:event*. If the *hist:* trigger is activated, the output histogram will be automatically saved to a file named *system_event_hist.txt*. For example, the command: rtla -t -e osnoise:irq_noise --trigger="hist:key=desc,duration/1000:sort=desc,duration/1000:vals=hitcount" Will automatically save the content of the histogram associated to *osnoise:irq_noise* event in *osnoise_irq_noise_hist.txt*. For further information about event trigger see https://www.kernel.org/doc/html/latest/trace/events.html#event-triggers. h](hterm)}(h**--trigger** **h](h)}(h **--trigger**h]h --trigger}(hjjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjfubh }(hjfhhhNhNubh)}(h **h]h }(hj|hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjfubeh}(h]h ]h"]h$]h&]uh1jdhhhK"hj`ubh definition)}(hhh](h)}(hEnable a trace event trigger to the previous **-e** *sys:event*. If the *hist:* trigger is activated, the output histogram will be automatically saved to a file named *system_event_hist.txt*. For example, the command:h](h-Enable a trace event trigger to the previous }(hjhhhNhNubh)}(h**-e**h]h-e}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh }(hjhhhNhNubh)}(h *sys:event*h]h sys:event}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh . If the }(hjhhhNhNubh)}(h*hist:*h]hhist:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubhX trigger is activated, the output histogram will be automatically saved to a file named }(hjhhhNhNubh)}(h*system_event_hist.txt*h]hsystem_event_hist.txt}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh. For example, the command:}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubh)}(h{rtla -t -e osnoise:irq_noise --trigger="hist:key=desc,duration/1000:sort=desc,duration/1000:vals=hitcount"h]hrtla -t -e osnoise:irq_noise --trigger=”hist:key=desc,duration/1000:sort=desc,duration/1000:vals=hitcount”}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubh)}(h}Will automatically save the content of the histogram associated to *osnoise:irq_noise* event in *osnoise_irq_noise_hist.txt*.h](hCWill automatically save the content of the histogram associated to }(hjhhhNhNubh)}(h*osnoise:irq_noise*h]hosnoise:irq_noise}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh event in }(hjhhhNhNubh)}(h*osnoise_irq_noise_hist.txt*h]hosnoise_irq_noise_hist.txt}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK hjubh)}(hxFor further information about event trigger see https://www.kernel.org/doc/html/latest/trace/events.html#event-triggers.h](h0For further information about event trigger see }(hj+hhhNhNubj9)}(hGhttps://www.kernel.org/doc/html/latest/trace/events.html#event-triggersh]hGhttps://www.kernel.org/doc/html/latest/trace/events.html#event-triggers}(hj3hhhNhNubah}(h]h ]h"]h$]h&]refurij5uh1j8hj+ubh.}(hj+hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK"hjubeh}(h]h ]h"]h$]h&]uh1jhj`ubeh}(h]h ]h"]h$]h&]uh1j^hhhK"hj[ubah}(h]h ]h"]h$]h&]uh1jYhhhhhhhNubh)}(h>**-P**, **--priority** *o:prio|r:prio|f:prio|d:runtime:period*h](h)}(h**-P**h]h-P}(hjbhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj^ubh, }(hj^hhhNhNubh)}(h**--priority**h]h --priority}(hjthhhNhNubah}(h]h ]h"]h$]h&]uh1hhj^ubh }(hj^hhhNhNubh)}(h'*o:prio|r:prio|f:prio|d:runtime:period*h]h%o:prio|r:prio|f:prio|d:runtime:period}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj^ubeh}(h]h ]h"]h$]h&]uh1hhhhK$hhhhubh)}(hX@Set scheduling parameters to the osnoise tracer threads, the format to set the priority are: - *o:prio* - use SCHED_OTHER with *prio*; - *r:prio* - use SCHED_RR with *prio*; - *f:prio* - use SCHED_FIFO with *prio*; - *d:runtime[us|ms|s]:period[us|ms|s]* - use SCHED_DEADLINE with *runtime* and *period* in nanoseconds. h](h)}(h\Set scheduling parameters to the osnoise tracer threads, the format to set the priority are:h]h\Set scheduling parameters to the osnoise tracer threads, the format to set the priority are:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK&hjubh bullet_list)}(hhh](h list_item)}(h'*o:prio* - use SCHED_OTHER with *prio*;h]h)}(hjh](h)}(h*o:prio*h]ho:prio}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh - use SCHED_OTHER with }(hjhhhNhNubh)}(h*prio*h]hprio}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh;}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK(hjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(h$*r:prio* - use SCHED_RR with *prio*;h]h)}(hjh](h)}(h*r:prio*h]hr:prio}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh - use SCHED_RR with }(hjhhhNhNubh)}(h*prio*h]hprio}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh;}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK)hjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(h&*f:prio* - use SCHED_FIFO with *prio*;h]h)}(hj#h](h)}(h*f:prio*h]hf:prio}(hj(hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj%ubh - use SCHED_FIFO with }(hj%hhhNhNubh)}(h*prio*h]hprio}(hj:hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj%ubh;}(hj%hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK*hj!ubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hf*d:runtime[us|ms|s]:period[us|ms|s]* - use SCHED_DEADLINE with *runtime* and *period* in nanoseconds. h]h)}(he*d:runtime[us|ms|s]:period[us|ms|s]* - use SCHED_DEADLINE with *runtime* and *period* in nanoseconds.h](h)}(h$*d:runtime[us|ms|s]:period[us|ms|s]*h]h"d:runtime[us|ms|s]:period[us|ms|s]}(hj`hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj\ubh - use SCHED_DEADLINE with }(hj\hhhNhNubh)}(h *runtime*h]hruntime}(hjrhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj\ubh and }(hj\hhhNhNubh)}(h*period*h]hperiod}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj\ubh in nanoseconds.}(hj\hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK+hjXubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]bullet-uh1jhhhK(hjubeh}(h]h ]h"]h$]h&]uh1hhhhK&hhhhubh)}(h **-C**, **--cgroup**\[*=cgroup*]h](h)}(h**-C**h]h-C}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh, }(hjhhhNhNubh)}(h **--cgroup**h]h--cgroup}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh[}(hjhhhNhNubh)}(h *=cgroup*h]h=cgroup}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh]}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK-hhhhubh)}(hSet a *cgroup* to the tracer's threads. If the **-C** option is passed without arguments, the tracer's thread will inherit **rtla**'s *cgroup*. Otherwise, the threads will be placed on the *cgroup* passed to the option. h]h)}(hSet a *cgroup* to the tracer's threads. If the **-C** option is passed without arguments, the tracer's thread will inherit **rtla**'s *cgroup*. Otherwise, the threads will be placed on the *cgroup* passed to the option.h](hSet a }(hjhhhNhNubh)}(h*cgroup*h]hcgroup}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh# to the tracer’s threads. If the }(hjhhhNhNubh)}(h**-C**h]h-C}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubhH option is passed without arguments, the tracer’s thread will inherit }(hjhhhNhNubh)}(h**rtla**h]hrtla}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh’s }(hjhhhNhNubh)}(h*cgroup*h]hcgroup}(hj2hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh/. Otherwise, the threads will be placed on the }(hjhhhNhNubh)}(h*cgroup*h]hcgroup}(hjDhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh passed to the option.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK/hjubah}(h]h ]h"]h$]h&]uh1hhhhK/hhhhubh)}(h**--warm-up** *s*h](h)}(h **--warm-up**h]h --warm-up}(hjfhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjbubh }(hjbhhhNhNubh)}(h*s*h]hs}(hjxhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjbubeh}(h]h ]h"]h$]h&]uh1hhhhK1hhhhubh)}(hAfter starting the workload, let it run for *s* seconds before starting collecting the data, allowing the system to warm-up. Statistical data generated during warm-up is discarded. h]h)}(hAfter starting the workload, let it run for *s* seconds before starting collecting the data, allowing the system to warm-up. Statistical data generated during warm-up is discarded.h](h,After starting the workload, let it run for }(hjhhhNhNubh)}(h*s*h]hs}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh seconds before starting collecting the data, allowing the system to warm-up. Statistical data generated during warm-up is discarded.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK3hjubah}(h]h ]h"]h$]h&]uh1hhhhK3hhhhubjZ)}(hhh]j_)}(h]**--trace-buffer-size** *kB* Set the per-cpu trace buffer size in kB for the tracing output. h](je)}(h**--trace-buffer-size** *kB*h](h)}(h**--trace-buffer-size**h]h--trace-buffer-size}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh }(hjhhhNhNubh)}(h*kB*h]hkB}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubeh}(h]h ]h"]h$]h&]uh1jdhhhK6hjubj)}(hhh]h)}(h?Set the per-cpu trace buffer size in kB for the tracing output.h]h?Set the per-cpu trace buffer size in kB for the tracing output.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK6hjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1j^hhhK6hjubah}(h]h ]h"]h$]h&]uh1jYhhhhhhhNubh)}(h**--on-threshold** *action*h](h)}(h**--on-threshold**h]h--on-threshold}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj ubh }(hj hhhNhNubh)}(h*action*h]haction}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj ubeh}(h]h ]h"]h$]h&]uh1hhhhK8hhhhubh)}(hXDefines an action to be executed when tracing is stopped on a latency threshold specified by |threshold|. Multiple --on-threshold actions may be specified, and they will be executed in the order they are provided. If any action fails, subsequent actions in the list will not be executed. Supported actions are: - *trace[,file=]* Saves trace output, optionally taking a filename. Alternative to -t/--trace. Note that nlike -t/--trace, specifying this multiple times will result in the trace being saved multiple times. - *signal,num=,pid=* Sends signal to process. "parent" might be specified in place of pid to target the parent process of rtla. - *shell,command=* Execute shell command. - *continue* Continue tracing after actions are executed instead of stopping. Example: $ rtla |tool| |thresharg| 20 --on-threshold trace --on-threshold shell,command="grep ipi_send |tracer|\_trace.txt" --on-threshold signal,num=2,pid=parent This will save a trace with the default filename "|tracer|\_trace.txt", print its lines that contain the text "ipi_send" on standard output, and send signal 2 (SIGINT) to the parent process. Performance Considerations: |actionsperf| h](h)}(hiDefines an action to be executed when tracing is stopped on a latency threshold specified by |threshold|.h](h]Defines an action to be executed when tracing is stopped on a latency threshold specified by }(hj8hhhNhNubh problematic)}(h |threshold|h]h |threshold|}(hjBhhhNhNubah}(h]id2ah ]h"]h$]h&]refidid1uh1j@hj8hhhNhNubh.}(hj8hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK:hj4ubh)}(hMultiple --on-threshold actions may be specified, and they will be executed in the order they are provided. If any action fails, subsequent actions in the list will not be executed.h]hMultiple --on-threshold actions may be specified, and they will be executed in the order they are provided. If any action fails, subsequent actions in the list will not be executed.}(hj]hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK=hj4ubh)}(hSupported actions are:h]hSupported actions are:}(hjkhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKAhj4ubj)}(hhh](j)}(h*trace[,file=]* Saves trace output, optionally taking a filename. Alternative to -t/--trace. Note that nlike -t/--trace, specifying this multiple times will result in the trace being saved multiple times. h](h)}(h*trace[,file=]*h]h)}(hjh]htrace[,file=]}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1hhhhKChj|ubh)}(hSaves trace output, optionally taking a filename. Alternative to -t/--trace. Note that nlike -t/--trace, specifying this multiple times will result in the trace being saved multiple times.h]hSaves trace output, optionally taking a filename. Alternative to -t/--trace. Note that nlike -t/--trace, specifying this multiple times will result in the trace being saved multiple times.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKEhj|ubeh}(h]h ]h"]h$]h&]uh1jhjyubj)}(h*signal,num=,pid=* Sends signal to process. "parent" might be specified in place of pid to target the parent process of rtla. h](h)}(h*signal,num=,pid=*h]h)}(hjh]hsignal,num=,pid=}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1hhhhKIhjubh)}(hjSends signal to process. "parent" might be specified in place of pid to target the parent process of rtla.h]hnSends signal to process. “parent” might be specified in place of pid to target the parent process of rtla.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKKhjubeh}(h]h ]h"]h$]h&]uh1jhjyubj)}(h2*shell,command=* Execute shell command. h](h)}(h*shell,command=*h]h)}(hjh]hshell,command=}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubah}(h]h ]h"]h$]h&]uh1hhhhKNhjubh)}(hExecute shell command.h]hExecute shell command.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKPhjubeh}(h]h ]h"]h$]h&]uh1jhjyubj)}(hM*continue* Continue tracing after actions are executed instead of stopping. h](h)}(h *continue*h]h)}(hjh]hcontinue}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhj ubah}(h]h ]h"]h$]h&]uh1hhhhKRhj ubh)}(h@Continue tracing after actions are executed instead of stopping.h]h@Continue tracing after actions are executed instead of stopping.}(hj$hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKThj ubeh}(h]h ]h"]h$]h&]uh1jhjyubeh}(h]h ]h"]h$]h&]jjuh1jhhhKChj4ubh)}(hExample:h]hExample:}(hj>hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKVhj4ubh)}(h$ rtla |tool| |thresharg| 20 --on-threshold trace --on-threshold shell,command="grep ipi_send |tracer|\_trace.txt" --on-threshold signal,num=2,pid=parenth](h$ rtla }(hjLhhhNhNubjA)}(h|tool|h]h|tool|}(hjThhhNhNubah}(h]id4ah ]h"]h$]h&]refidid3uh1j@hjLhhhNhNubh }(hjLhhhNhNubjA)}(h |thresharg|h]h |thresharg|}(hjihhhNhNubah}(h]id6ah ]h"]h$]h&]refidid5uh1j@hjLhhhNhNubhG 20 --on-threshold trace --on-threshold shell,command=”grep ipi_send }(hjLhhhNhNubjA)}(h|tracer|h]h|tracer|}(hj~hhhNhNubah}(h]id8ah ]h"]h$]h&]refidid7uh1j@hjLhhhNhNubh5_trace.txt” --on-threshold signal,num=2,pid=parent}(hjLhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKXhj4ubh)}(hThis will save a trace with the default filename "|tracer|\_trace.txt", print its lines that contain the text "ipi_send" on standard output, and send signal 2 (SIGINT) to the parent process.h](h4This will save a trace with the default filename “}(hjhhhNhNubjA)}(h|tracer|h]h|tracer|}(hjhhhNhNubah}(h]id10ah ]h"]h$]h&]refidid9uh1j@hjhhhNhNubh_trace.txt”, print its lines that contain the text “ipi_send” on standard output, and send signal 2 (SIGINT) to the parent process.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK\hj4ubh)}(hPerformance Considerations:h]hPerformance Considerations:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK`hj4ubh)}(h |actionsperf|h]jA)}(hjh]h |actionsperf|}(hjhhhNhNubah}(h]id12ah ]h"]h$]h&]refidid11uh1j@hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKbhj4ubeh}(h]h ]h"]h$]h&]uh1hhhhK:hhhhubh)}(h**--on-end** *action*h](h)}(h **--on-end**h]h--on-end}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubh }(hjhhhNhNubh)}(h*action*h]haction}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjubeh}(h]h ]h"]h$]h&]uh1hhhhKdhhhhubh)}(hXDefines an action to be executed at the end of tracing. Multiple --on-end actions can be specified, and they will be executed in the order they are provided. If any action fails, subsequent actions in the list will not be executed. See the documentation for **--on-threshold** for the list of supported actions, with the exception that *continue* has no effect. Example: $ rtla |tool| -d 5s --on-end trace This runs rtla with the default options, and saves trace output at the end. h](h)}(h7Defines an action to be executed at the end of tracing.h]h7Defines an action to be executed at the end of tracing.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKfhj ubh)}(hMultiple --on-end actions can be specified, and they will be executed in the order they are provided. If any action fails, subsequent actions in the list will not be executed.h]hMultiple --on-end actions can be specified, and they will be executed in the order they are provided. If any action fails, subsequent actions in the list will not be executed.}(hj& hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhhj ubh)}(hSee the documentation for **--on-threshold** for the list of supported actions, with the exception that *continue* has no effect.h](hSee the documentation for }(hj4 hhhNhNubh)}(h**--on-threshold**h]h--on-threshold}(hj< hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj4 ubh< for the list of supported actions, with the exception that }(hj4 hhhNhNubh)}(h *continue*h]hcontinue}(hjN hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj4 ubh has no effect.}(hj4 hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKlhj ubh)}(hExample:h]hExample:}(hjf hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKohj ubh)}(h"$ rtla |tool| -d 5s --on-end traceh](h$ rtla }(hjt hhhNhNubjA)}(h|tool|h]h|tool|}(hj| hhhNhNubah}(h]id14ah ]h"]h$]h&]refidid13uh1j@hjt hhhNhNubh -d 5s --on-end trace}(hjt hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKqhj ubh)}(hKThis runs rtla with the default options, and saves trace output at the end.h]hKThis runs rtla with the default options, and saves trace output at the end.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKshj ubeh}(h]h ]h"]h$]h&]uh1hhhhKfhhhhubh)}(h**-h**, **--help**h](h)}(h**-h**h]h-h}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj ubh, }(hj hhhNhNubh)}(h **--help**h]h--help}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj ubeh}(h]h ]h"]h$]h&]uh1hhhhKuhhhhubh)}(hPrint help menu.h]h)}(hj h]hPrint help menu.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKwhj ubah}(h]h ]h"]h$]h&]uh1hhhhKwhhhhubeh}(h]h ]h"]h$]h&]sourcehuh1hcurrent_sourceN current_lineNsettingsdocutils.frontendValues)}(titleN generatorN datestampN source_linkN source_urlN toc_backlinksentryfootnote_backlinksK sectnum_xformKstrip_commentsNstrip_elements_with_classesN strip_classesN report_levelK halt_levelKexit_status_levelKdebugNwarning_streamN tracebackinput_encoding utf-8-siginput_encoding_error_handlerstrictoutput_encodingutf-8output_encoding_error_handlerj error_encodingutf-8error_encoding_error_handlerbackslashreplace language_codeenrecord_dependenciesNconfigN id_prefixhauto_id_prefixid dump_settingsNdump_internalsNdump_transformsNdump_pseudo_xmlNexpose_internalsNstrict_visitorN_disable_configN_sourceh _destinationN _config_files]7/var/lib/git/docbuild/linux/Documentation/docutils.confafile_insertion_enabled raw_enabledKline_length_limitM'pep_referencesN pep_base_urlhttps://peps.python.org/pep_file_url_templatepep-%04drfc_referencesN rfc_base_url&https://datatracker.ietf.org/doc/html/ tab_widthKtrim_footnote_reference_spacesyntax_highlightlong smart_quotessmartquotes_locales]character_level_inline_markupdoctitle_xform docinfo_xformKsectsubtitle_xform image_loadinglinkembed_stylesheetcloak_email_addressessection_self_linkenvNubreporterNindirect_targets]substitution_defs}substitution_names}refnames}refids}nameids} nametypes}h}(jRhsystem_message)}(hhh]h)}(hhh]h/Undefined substitution referenced: "threshold".}hj\ sbah}(h]h ]h"]h$]h&]uh1hhjY ubah}(h]jRah ]h"]h$]h&]jLalevelKtypeERRORsourcehlineK:uh1jW ubjLjBjdjX )}(hhh]h)}(hhh]h*Undefined substitution referenced: "tool".}hjw sbah}(h]h ]h"]h$]h&]uh1hhjt ubah}(h]jdah ]h"]h$]h&]j^alevelKtypejq sourcehlineKXuh1jW ubj^jTjyjX )}(hhh]h)}(hhh]h/Undefined substitution referenced: "thresharg".}hj sbah}(h]h ]h"]h$]h&]uh1hhj ubah}(h]jyah ]h"]h$]h&]jsalevelKtypejq sourcehlineKXuh1jW ubjsjijjX )}(hhh]h)}(hhh]h,Undefined substitution referenced: "tracer".}hj sbah}(h]h ]h"]h$]h&]uh1hhj ubah}(h]jah ]h"]h$]h&]jalevelKtypejq sourcehlineKXuh1jW ubjj~jjX )}(hhh]h)}(hhh]h,Undefined substitution referenced: "tracer".}hj sbah}(h]h ]h"]h$]h&]uh1hhj ubah}(h]jah ]h"]h$]h&]jalevelKtypejq sourcehlineK\uh1jW ubjjjjX )}(hhh]h)}(hhh]h1Undefined substitution referenced: "actionsperf".}hj sbah}(h]h ]h"]h$]h&]uh1hhj ubah}(h]jah ]h"]h$]h&]jalevelKtypejq sourcehlineKbuh1jW ubjjj jX )}(hhh]h)}(hhh]h*Undefined substitution referenced: "tool".}hj sbah}(h]h ]h"]h$]h&]uh1hhj ubah}(h]j ah ]h"]h$]h&]j alevelKtypejq sourcehlineKquh1jW ubj j| u footnote_refs} citation_refs} autofootnotes]autofootnote_refs]symbol_footnotes]symbol_footnote_refs] footnotes] citations]autofootnote_startKsymbol_footnote_startK id_counter collectionsCounter}j KsRparse_messages]transform_messages](jY jt j j j j j e transformerN include_log] decorationNhhub.