€•*XŒsphinx.addnodes”Œdocument”“”)”}”(Œ rawsource”Œ”Œchildren”]”(Œ translations”Œ LanguagesNode”“”)”}”(hhh]”(hŒ pending_xref”“”)”}”(hhh]”Œdocutils.nodes”ŒText”“”ŒChinese (Simplified)”…””}”Œparent”hsbaŒ attributes”}”(Œids”]”Œclasses”]”Œnames”]”Œdupnames”]”Œbackrefs”]”Œ refdomain”Œstd”Œreftype”Œdoc”Œ reftarget”Œ,/translations/zh_CN/tools/rtla/rtla-timerlat”Œmodname”NŒ classname”NŒ refexplicit”ˆuŒtagname”hhh ubh)”}”(hhh]”hŒChinese (Traditional)”…””}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ,/translations/zh_TW/tools/rtla/rtla-timerlat”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒItalian”…””}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ,/translations/it_IT/tools/rtla/rtla-timerlat”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒJapanese”…””}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ,/translations/ja_JP/tools/rtla/rtla-timerlat”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒKorean”…””}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ,/translations/ko_KR/tools/rtla/rtla-timerlat”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒPortuguese (Brazilian)”…””}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ,/translations/pt_BR/tools/rtla/rtla-timerlat”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒSpanish”…””}”hh–sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ,/translations/sp_SP/tools/rtla/rtla-timerlat”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒsection”“”)”}”(hhh]”(hŒtitle”“”)”}”(hŒ rtla-timerlat”h]”hŒ rtla-timerlat”…””}”(hh¼h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhh·h²hh³ŒF/var/lib/git/docbuild/linux/Documentation/tools/rtla/rtla-timerlat.rst”h´Kubh¶)”}”(hhh]”(h»)”}”(hŒ+Measures the operating system timer latency”h]”hŒ+Measures the operating system timer latency”…””}”(hhÎh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhhËh²hh³hÊh´KubhŒ field_list”“”)”}”(hhh]”hŒfield”“”)”}”(hhh]”(hŒ field_name”“”)”}”(hŒManual section”h]”hŒManual section”…””}”(hhèh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hæhhãh³hÊh´KubhŒ field_body”“”)”}”(hŒ1 ”h]”hŒ paragraph”“”)”}”(hŒ1”h]”hŒ1”…””}”(hhþh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÊh´Khhøubah}”(h]”h ]”h"]”h$]”h&]”uh1höhhãubeh}”(h]”h ]”h"]”h$]”h&]”uh1háh³hÊh´KhhÞh²hubah}”(h]”h ]”h"]”h$]”h&]”uh1hÜhhËh²hh³hÊh´Kubh¶)”}”(hhh]”(h»)”}”(hŒSYNOPSIS”h]”hŒSYNOPSIS”…””}”(hj!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhjh²hh³hÊh´K ubhý)”}”(hŒ**rtla timerlat** [*MODE*] ...”h]”(hŒstrong”“”)”}”(hŒ**rtla timerlat**”h]”hŒ rtla timerlat”…””}”(hj5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j3hj/ubhŒ [”…””}”(hj/h²hh³Nh´NubhŒemphasis”“”)”}”(hŒ*MODE*”h]”hŒMODE”…””}”(hjIh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jGhj/ubhŒ] ...”…””}”(hj/h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÊh´K hjh²hubeh}”(h]”Œsynopsis”ah ]”h"]”Œsynopsis”ah$]”h&]”uh1hµhhËh²hh³hÊh´K ubh¶)”}”(hhh]”(h»)”}”(hŒ DESCRIPTION”h]”hŒ DESCRIPTION”…””}”(hjlh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhjih²hh³hÊh´Kubhý)”}”(hXBThe **rtla timerlat** tool is an interface for the *timerlat* tracer. The *timerlat* tracer dispatches a kernel thread per-cpu. These threads set a periodic timer to wake themselves up and go back to sleep. After the wakeup, they collect and generate useful information for the debugging of operating system timer latency.”h]”(hŒThe ”…””}”(hjzh²hh³Nh´Nubj4)”}”(hŒ**rtla timerlat**”h]”hŒ rtla timerlat”…””}”(hj‚h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j3hjzubhŒ tool is an interface for the ”…””}”(hjzh²hh³Nh´NubjH)”}”(hŒ *timerlat*”h]”hŒtimerlat”…””}”(hj”h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jGhjzubhŒ tracer. The ”…””}”(hjzh²hh³Nh´NubjH)”}”(hŒ *timerlat*”h]”hŒtimerlat”…””}”(hj¦h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jGhjzubhŒî tracer dispatches a kernel thread per-cpu. These threads set a periodic timer to wake themselves up and go back to sleep. After the wakeup, they collect and generate useful information for the debugging of operating system timer latency.”…””}”(hjzh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hüh³Œ8Documentation/tools/rtla/common_timerlat_description.txt”h´Khjih²hubhý)”}”(hŒíThe *timerlat* tracer outputs information in two ways. It periodically prints the timer latency at the timer *IRQ* handler and the *Thread* handler. It also enables the trace of the most relevant information via **osnoise:** tracepoints.”h]”(hŒThe ”…””}”(hj¿h²hh³Nh´NubjH)”}”(hŒ *timerlat*”h]”hŒtimerlat”…””}”(hjÇh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jGhj¿ubhŒ_ tracer outputs information in two ways. It periodically prints the timer latency at the timer ”…””}”(hj¿h²hh³Nh´NubjH)”}”(hŒ*IRQ*”h]”hŒIRQ”…””}”(hjÙh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jGhj¿ubhŒ handler and the ”…””}”(hj¿h²hh³Nh´NubjH)”}”(hŒ*Thread*”h]”hŒThread”…””}”(hjëh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jGhj¿ubhŒI handler. It also enables the trace of the most relevant information via ”…””}”(hj¿h²hh³Nh´Nubj4)”}”(hŒ **osnoise:**”h]”hŒosnoise:”…””}”(hjýh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j3hj¿ubhŒ tracepoints.”…””}”(hj¿h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hüh³j¾h´Khjih²hubhý)”}”(hX¾The **rtla timerlat** tool sets the options of the *timerlat* tracer and collects and displays a summary of the results. By default, the collection is done synchronously in kernel space using a dedicated BPF program attached to the *timerlat* tracer. If either BPF or the **osnoise:timerlat_sample** tracepoint it attaches to is unavailable, the **rtla timerlat** tool falls back to using tracefs to process the data asynchronously in user space.”h]”(hŒThe ”…””}”(hjh²hh³Nh´Nubj4)”}”(hŒ**rtla timerlat**”h]”hŒ rtla timerlat”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j3hjubhŒ tool sets the options of the ”…””}”(hjh²hh³Nh´NubjH)”}”(hŒ *timerlat*”h]”hŒtimerlat”…””}”(hj/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jGhjubhŒ« tracer and collects and displays a summary of the results. By default, the collection is done synchronously in kernel space using a dedicated BPF program attached to the ”…””}”(hjh²hh³Nh´NubjH)”}”(hŒ *timerlat*”h]”hŒtimerlat”…””}”(hjAh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jGhjubhŒ tracer. If either BPF or the ”…””}”(hjh²hh³Nh´Nubj4)”}”(hŒ**osnoise:timerlat_sample**”h]”hŒosnoise:timerlat_sample”…””}”(hjSh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j3hjubhŒ/ tracepoint it attaches to is unavailable, the ”…””}”(hjh²hh³Nh´Nubj4)”}”(hŒ**rtla timerlat**”h]”hŒ rtla timerlat”…””}”(hjeh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j3hjubhŒS tool falls back to using tracefs to process the data asynchronously in user space.”…””}”(hjh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hüh³j¾h´K hjih²hubhý)”}”(hŒøThe **rtla timerlat top** mode displays a summary of the periodic output from the *timerlat* tracer. The **rtla timerlat hist** mode displays a histogram of each tracer event occurrence. For further details, please refer to the respective man page.”h]”(hŒThe ”…””}”(hj}h²hh³Nh´Nubj4)”}”(hŒ**rtla timerlat top**”h]”hŒrtla timerlat top”…””}”(hj…h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j3hj}ubhŒ9 mode displays a summary of the periodic output from the ”…””}”(hj}h²hh³Nh´NubjH)”}”(hŒ *timerlat*”h]”hŒtimerlat”…””}”(hj—h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jGhj}ubhŒ tracer. The ”…””}”(hj}h²hh³Nh´Nubj4)”}”(hŒ**rtla timerlat hist**”h]”hŒrtla timerlat hist”…””}”(hj©h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j3hj}ubhŒy mode displays a histogram of each tracer event occurrence. For further details, please refer to the respective man page.”…””}”(hj}h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÊh´Khjih²hubeh}”(h]”Œ description”ah ]”h"]”Œ description”ah$]”h&]”uh1hµhhËh²hh³hÊh´Kubh¶)”}”(hhh]”(h»)”}”(hŒMODES”h]”hŒMODES”…””}”(hjÌh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhjÉh²hh³hÊh´Kubhý)”}”(hŒ**top**”h]”j4)”}”(hjÜh]”hŒtop”…””}”(hjÞh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j3hjÚubah}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÊh´KhjÉh²hubhŒ block_quote”“”)”}”(hŒ+Prints the summary from *timerlat* tracer. ”h]”hý)”}”(hŒ*Prints the summary from *timerlat* tracer.”h]”(hŒPrints the summary from ”…””}”(hj÷h²hh³Nh´NubjH)”}”(hŒ *timerlat*”h]”hŒtimerlat”…””}”(hjÿh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jGhj÷ubhŒ tracer.”…””}”(hj÷h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÊh´Khjóubah}”(h]”h ]”h"]”h$]”h&]”uh1jñh³hÊh´KhjÉh²hubhý)”}”(hŒ**hist**”h]”j4)”}”(hjh]”hŒhist”…””}”(hj!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j3hjubah}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÊh´KhjÉh²hubjò)”}”(hŒ(Prints a histogram of timerlat samples. ”h]”hý)”}”(hŒ'Prints a histogram of timerlat samples.”h]”hŒ'Prints a histogram of timerlat samples.”…””}”(hj8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÊh´K hj4ubah}”(h]”h ]”h"]”h$]”h&]”uh1jñh³hÊh´K hjÉh²hubhý)”}”(hŒEIf no *MODE* is given, the top mode is called, passing the arguments.”h]”(hŒIf no ”…””}”(hjLh²hh³Nh´NubjH)”}”(hŒ*MODE*”h]”hŒMODE”…””}”(hjTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jGhjLubhŒ9 is given, the top mode is called, passing the arguments.”…””}”(hjLh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÊh´K"hjÉh²hubeh}”(h]”Œmodes”ah ]”h"]”Œmodes”ah$]”h&]”uh1hµhhËh²hh³hÊh´Kubh¶)”}”(hhh]”(h»)”}”(hŒOPTIONS”h]”hŒOPTIONS”…””}”(hjwh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhjth²hh³hÊh´K%ubhý)”}”(hŒ**-h**, **--help**”h]”(j4)”}”(hŒ**-h**”h]”hŒ-h”…””}”(hj‰h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j3hj…ubhŒ, ”…””}”(hj…h²hh³Nh´Nubj4)”}”(hŒ **--help**”h]”hŒ--help”…””}”(hj›h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j3hj…ubeh}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÊh´K&hjth²hubjò)”}”(hŒDisplay the help text. ”h]”hý)”}”(hŒDisplay the help text.”h]”hŒDisplay the help text.”…””}”(hj³h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÊh´K(hj¯ubah}”(h]”h ]”h"]”h$]”h&]”uh1jñh³hÊh´K(hjth²hubhý)”}”(hŒ?For other options, see the man page for the corresponding mode.”h]”hŒ?For other options, see the man page for the corresponding mode.”…””}”(hjÇh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÊh´K*hjth²hubeh}”(h]”Œoptions”ah ]”h"]”Œoptions”ah$]”h&]”uh1hµhhËh²hh³hÊh´K%ubh¶)”}”(hhh]”(h»)”}”(hŒSEE ALSO”h]”hŒSEE ALSO”…””}”(hjàh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhjÝh²hh³hÊh´K-ubhý)”}”(hŒ5**rtla-timerlat-top**\(1), **rtla-timerlat-hist**\(1)”h]”(j4)”}”(hŒ**rtla-timerlat-top**”h]”hŒrtla-timerlat-top”…””}”(hjòh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j3hjîubhŒ(1), ”…””}”(hjîh²hh³Nh´Nubj4)”}”(hŒ**rtla-timerlat-hist**”h]”hŒrtla-timerlat-hist”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j3hjîubhŒ(1)”…””}”(hjîh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÊh´K.hjÝh²hubhý)”}”(hŒH`Timerlat tracer `__”h]”hŒ reference”“”)”}”(hjh]”hŒTimerlat tracer”…””}”(hj"h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œname”ŒTimerlat tracer”Œrefuri”Œ2https://docs.kernel.org/trace/timerlat-tracer.html”uh1j hjubah}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÊh´K0hjÝh²hubeh}”(h]”Œsee-also”ah ]”h"]”Œsee also”ah$]”h&]”uh1hµhhËh²hh³hÊh´K-ubh¶)”}”(hhh]”(h»)”}”(hŒAUTHOR”h]”hŒAUTHOR”…””}”(hjDh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhjAh²hh³hÊh´K3ubhý)”}”(hŒ:Written by Daniel Bristot de Oliveira ”h]”(hŒ'Written by Daniel Bristot de Oliveira <”…””}”(hjRh²hh³Nh´Nubj!)”}”(hŒbristot@kernel.org”h]”hŒbristot@kernel.org”…””}”(hjZh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”Œmailto:bristot@kernel.org”uh1j hjRubhŒ>”…””}”(hjRh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÊh´K4hjAh²hubhŒcomment”“”)”}”(hŒ SPDX-License-Identifier: GPL-2.0”h]”hŒ SPDX-License-Identifier: GPL-2.0”…””}”hjvsbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1jthjAh²hh³Œ,Documentation/tools/rtla/common_appendix.txt”h´Kubeh}”(h]”Œauthor”ah ]”h"]”Œauthor”ah$]”h&]”uh1hµhhËh²hh³hÊh´K3ubh¶)”}”(hhh]”(h»)”}”(hŒUNSETTING OPTIONS”h]”hŒUNSETTING OPTIONS”…””}”(hj’h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhjh²hh³j†h´Kubhý)”}”(hŒ{The effect of most command line options can be reverted by prepending "no-" to the long variant of the option, for example:”h]”hŒThe effect of most command line options can be reverted by prepending “no-†to the long variant of the option, for example:”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hüh³j†h´Khjh²hubhý)”}”(hŒ&$ rtla timerlat top -p 100 --no-period”h]”hŒ&$ rtla timerlat top -p 100 --no-period”…””}”(hj®h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hüh³j†h´K hjh²hubhý)”}”(hŒ7resets the period back to the default value of 1000 us.”h]”hŒ7resets the period back to the default value of 1000 us.”…””}”(hj¼h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hüh³j†h´K hjh²hubhý)”}”(hX=If a command line option sets multiple RTLA parameters at once, the inverted option will revert all of them, even if they were not set by the particular option. For example, since using "--auto" implies "--trace", specifying "--trace --no-auto" will also disable trace output, just like if "--no-trace" was specified.”h]”hXMIf a command line option sets multiple RTLA parameters at once, the inverted option will revert all of them, even if they were not set by the particular option. For example, since using “--auto†implies “--traceâ€, specifying “--trace --no-auto†will also disable trace output, just like if “--no-trace†was specified.”…””}”(hjÊh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hüh³j†h´K hjh²hubeh}”(h]”Œunsetting-options”ah ]”h"]”Œunsetting options”ah$]”h&]”uh1hµhhËh²hh³j†h´Kubh¶)”}”(hhh]”(h»)”}”(hŒSIGINT BEHAVIOR”h]”hŒSIGINT BEHAVIOR”…””}”(hjãh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhjàh²hh³j†h´Kubhý)”}”(hŒqOn the first SIGINT, RTLA exits after collecting all outstanding samples up to the point of receiving the signal.”h]”hŒqOn the first SIGINT, RTLA exits after collecting all outstanding samples up to the point of receiving the signal.”…””}”(hjñh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hüh³j†h´Khjàh²hubhý)”}”(hŒ•When receiving more than one SIGINT, RTLA discards any outstanding samples, and exits while displaying only samples that have already been processed.”h]”hŒ•When receiving more than one SIGINT, RTLA discards any outstanding samples, and exits while displaying only samples that have already been processed.”…””}”(hjÿh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hüh³j†h´Khjàh²hubhý)”}”(hŒaIf SIGINT is received during RTLA cleanup, RTLA exits immediately via the default signal handler.”h]”hŒaIf SIGINT is received during RTLA cleanup, RTLA exits immediately via the default signal handler.”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hüh³j†h´Khjàh²hubhý)”}”(hXNote: For the purpose of SIGINT behavior, the expiry of duration specified via the -d/--duration option is treated as equivalent to receiving a SIGINT. For example, a SIGINT received after duration expired but samples have not been processed yet will drop any outstanding samples.”h]”hXNote: For the purpose of SIGINT behavior, the expiry of duration specified via the -d/--duration option is treated as equivalent to receiving a SIGINT. For example, a SIGINT received after duration expired but samples have not been processed yet will drop any outstanding samples.”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hüh³j†h´K hjàh²hubhý)”}”(hŒÎAlso note that when using the timerlat tool in BPF mode, samples are processed in-kernel; RTLA only copies them out to display them to the user. A second SIGINT does not affect in-kernel sample aggregation.”h]”hŒÎAlso note that when using the timerlat tool in BPF mode, samples are processed in-kernel; RTLA only copies them out to display them to the user. A second SIGINT does not affect in-kernel sample aggregation.”…””}”(hj)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hüh³j†h´K%hjàh²hubeh}”(h]”Œsigint-behavior”ah ]”h"]”Œsigint behavior”ah$]”h&]”uh1hµhhËh²hh³j†h´Kubh¶)”}”(hhh]”(h»)”}”(hŒ EXIT STATUS”h]”hŒ EXIT STATUS”…””}”(hjBh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhj?h²hh³j†h´K*ubhŒ literal_block”“”)”}”(hŒÖ0 Passed: the test did not hit the stop tracing condition 1 Error: invalid argument 2 Failed: the test hit the stop tracing condition 129 Help: either user requested help or incorrect option was specified”h]”hŒÖ0 Passed: the test did not hit the stop tracing condition 1 Error: invalid argument 2 Failed: the test hit the stop tracing condition 129 Help: either user requested help or incorrect option was specified”…””}”hjRsbah}”(h]”h ]”h"]”h$]”h&]”j„j…uh1jPh³j†h´K.hj?h²hubeh}”(h]”Œ exit-status”ah ]”h"]”Œ exit status”ah$]”h&]”uh1hµhhËh²hh³j†h´K*ubh¶)”}”(hhh]”(h»)”}”(hŒREPORTING BUGS”h]”hŒREPORTING BUGS”…””}”(hjkh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhjhh²hh³j†h´K4ubhý)”}”(hŒUReport bugs to and ”h]”(hŒReport bugs to <”…””}”(hjyh²hh³Nh´Nubj!)”}”(hŒlinux-kernel@vger.kernel.org”h]”hŒlinux-kernel@vger.kernel.org”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”Œ#mailto:linux-kernel@vger.kernel.org”uh1j hjyubhŒ> and <”…””}”(hjyh²hh³Nh´Nubj!)”}”(hŒ!linux-trace-devel@vger.kernel.org”h]”hŒ!linux-trace-devel@vger.kernel.org”…””}”(hj•h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”Œ(mailto:linux-trace-devel@vger.kernel.org”uh1j hjyubhŒ>”…””}”(hjyh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hüh³j†h´K5hjhh²hubeh}”(h]”Œreporting-bugs”ah ]”h"]”Œreporting bugs”ah$]”h&]”uh1hµhhËh²hh³j†h´K4ubh¶)”}”(hhh]”(h»)”}”(hŒLICENSE”h]”hŒLICENSE”…””}”(hjºh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhj·h²hh³j†h´K9ubhý)”}”(hŒ6**rtla** is Free Software licensed under the GNU GPLv2”h]”(j4)”}”(hŒ**rtla**”h]”hŒrtla”…””}”(hjÌh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j3hjÈubhŒ. is Free Software licensed under the GNU GPLv2”…””}”(hjÈh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hüh³j†h´K:hj·h²hubeh}”(h]”Œlicense”ah ]”h"]”Œlicense”ah$]”h&]”uh1hµhhËh²hh³j†h´K9ubh¶)”}”(hhh]”(h»)”}”(hŒCOPYING”h]”hŒCOPYING”…””}”(hjïh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhjìh²hh³j†h´K=ubhý)”}”(hŒwCopyright \(C) 2021 Red Hat, Inc. Free use of this software is granted under the terms of the GNU Public License (GPL).”h]”hŒwCopyright (C) 2021 Red Hat, Inc. Free use of this software is granted under the terms of the GNU Public License (GPL).”…””}”(hjýh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hüh³j†h´K>hjìh²hubeh}”(h]”Œcopying”ah ]”h"]”Œcopying”ah$]”h&]”uh1hµhhËh²hh³j†h´K=ubeh}”(h]”Œ+measures-the-operating-system-timer-latency”ah ]”h"]”Œ+measures the operating system timer latency”ah$]”h&]”uh1hµhh·h²hh³hÊh´Kubeh}”(h]”Œ rtla-timerlat”ah ]”h"]”Œ rtla-timerlat”ah$]”h&]”uh1hµhhh²hh³hÊh´Kubeh}”(h]”h ]”h"]”h$]”h&]”Œsource”hÊuh1hŒcurrent_source”NŒ current_line”NŒsettings”Œdocutils.frontend”ŒValues”“”)”}”(hºNŒ generator”NŒ datestamp”NŒ source_link”NŒ source_url”NŒ toc_backlinks”Œentry”Œfootnote_backlinks”KŒ sectnum_xform”KŒstrip_comments”NŒstrip_elements_with_classes”NŒ strip_classes”NŒ report_level”KŒ halt_level”KŒexit_status_level”KŒdebug”NŒwarning_stream”NŒ traceback”ˆŒinput_encoding”Œ utf-8-sig”Œinput_encoding_error_handler”Œstrict”Œoutput_encoding”Œutf-8”Œoutput_encoding_error_handler”jFŒerror_encoding”Œutf-8”Œerror_encoding_error_handler”Œbackslashreplace”Œ language_code”Œen”Œrecord_dependencies”NŒconfig”NŒ id_prefix”hŒauto_id_prefix”Œid”Œ dump_settings”NŒdump_internals”NŒdump_transforms”NŒdump_pseudo_xml”NŒexpose_internals”NŒstrict_visitor”NŒ_disable_config”NŒ_source”hÊŒ _destination”NŒ _config_files”]”Œ7/var/lib/git/docbuild/linux/Documentation/docutils.conf”aŒfile_insertion_enabled”ˆŒ raw_enabled”KŒline_length_limit”M'Œpep_references”NŒ pep_base_url”Œhttps://peps.python.org/”Œpep_file_url_template”Œpep-%04d”Œrfc_references”NŒ rfc_base_url”Œ&https://datatracker.ietf.org/doc/html/”Œ tab_width”KŒtrim_footnote_reference_space”‰Œsyntax_highlight”Œlong”Œ smart_quotes”ˆŒsmartquotes_locales”]”Œcharacter_level_inline_markup”‰Œdoctitle_xform”‰Œ docinfo_xform”KŒsectsubtitle_xform”‰Œ image_loading”Œlink”Œembed_stylesheet”‰Œcloak_email_addresses”ˆŒsection_self_link”‰Œenv”NubŒreporter”NŒindirect_targets”]”Œsubstitution_defs”}”Œsubstitution_names”}”Œrefnames”}”Œrefids”}”Œnameids”}”(j jjjjfjcjÆjÃjqjnjÚj×j>j;jŒj‰jÝjÚj<j9jejbj´j±jéjæjj uŒ nametypes”}”(j ‰j‰jf‰jƉjq‰jÚ‰j>‰jŒ‰j݉j<‰je‰j´‰jé‰j‰uh}”(jh·jhËjcjjÃjijnjÉj×jtj;jÝj‰jAjÚjj9jàjbj?j±jhjæj·j jìuŒ footnote_refs”}”Œ citation_refs”}”Œ autofootnotes”]”Œautofootnote_refs”]”Œsymbol_footnotes”]”Œsymbol_footnote_refs”]”Œ footnotes”]”Œ citations”]”Œautofootnote_start”KŒsymbol_footnote_start”KŒ id_counter”Œ collections”ŒCounter”“”}”…”R”Œparse_messages”]”Œtransform_messages”]”Œ transformer”NŒ include_log”]”Œ*Documentation/tools/rtla/rtla-timerlat.rst”(NNNNt”†”aŒ decoration”Nh²hub.