RTLA-TIMERLAT(1)

✨ rtla-timerlat β€” the manual page, but make it cute ✨

okay bestie, pull up a chair, because this is rtla-timerlat from the General Commands Manual section, and it's literally about measuring how long your operating system's timers take to wake up. iykyk. πŸ’…


🌸 NAME 🌸

rtla-timerlat β€” measures the operating system timer latency πŸ¦‹


πŸŽ€ SYNOPSIS πŸŽ€

rtla timerlat [MODE] ...

πŸ’– DESCRIPTION πŸ’–

The rtla timerlat tool is basically a bestie-shaped interface for the timerlat tracer. Here's the tea: the timerlat tracer dispatches one kernel thread per-cpu. Those threads set a periodic timer to wake themselves up, then go right back to sleep (naps are self-care, periodt 😴). After the wakeup, they collect and generate useful info for debugging operating system timer latency. it's giving scientist energy πŸ”¬

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.

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. But 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. adaptive queen behavior honestly πŸ‘‘

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 (they're their own whole thing, go read them πŸ’–).


🌈 MODES 🌈

  • top β€” prints the summary from timerlat tracer. classic. iconic. πŸ’…
  • hist β€” prints a histogram of timerlat samples. we love a distribution moment πŸ“Š
If no MODE is given, the top mode is called, passing the arguments. so it just... does the thing for you. sweet fr fr 🫢

✨ OPTIONS ✨

  • -h, --help β€” displays the help text. the "bestie explain" button πŸ†˜

For other options, see the man page for the corresponding mode. that's where the real flag lore lives, no cap πŸŽ€


πŸ¦‹ SEE ALSO πŸ¦‹


πŸ’œ AUTHOR πŸ’œ

Written by Daniel Bristot de Oliveira < <bristot@kernel.org> > β€” thank you king, we appreciate you πŸ™‡β€β™€οΈβœ¨


🚨 SIGINT BEHAVIOR 🚨

okay this part matters, so pay attention bestie πŸ‘€

  • On the first SIGINT, RTLA exits after collecting all outstanding samples up to the point of receiving the signal. polite. considerate. finished her drink first πŸ’…
  • When receiving more than one SIGINT, RTLA discards any outstanding samples, and exits while displaying only samples that have already been processed. she said okay bye then πŸ’€
  • If SIGINT is received during RTLA cleanup, RTLA exits immediately via the default signal handler. no more processing, we're out πŸšͺπŸ’¨
Note: 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. so the timer running out is basically the same vibe as you pressing ctrl-c. same energy fr fr ⏰
Also note: 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. so the in-kernel girlies are unbothered, she's built different 😌

πŸ‘‘ EXIT STATUS πŸ‘‘

  • 0 β€” Passed: the test did not hit the stop tracing condition πŸŽ‰ slay
  • 1 β€” Error: invalid argument 😭
  • 2 β€” Failed: the test hit the stop tracing condition πŸ’€
  • 129 β€” Help: either user requested help or incorrect option was specified πŸ™ˆ

πŸ“ REPORTING BUGS πŸ“

Report bugs to < <linux-kernel@vger.kernel.org> > and < <linux-trace-devel@vger.kernel.org> > β€” tell them everything, they wanna know 🫢


🧚 LICENSE 🧚

rtla is Free Software licensed under the GNU GPLv2 ⭐


πŸ’– COPYING πŸ’–

Copyright (C) 2021 Red Hat, Inc. Free use of this software is granted under the terms of the GNU Public License (GPL).


and that's the whole page bestie!! mwah πŸ’‹ this was RTLA-TIMERLAT(1) β€” the manual page name and section stay iconic and unchanged β€” brought to you by the folks at the General Commands Manual, and yeah, the page signs off with RTLA-TIMERLAT(1) at the bottom like a little autograph. go forth and measure those timer latencies, main character πŸ’…βœ¨πŸ¦‹

πŸ“¦ where this page comes from
  • fedora 43: rtla 7.2.11-100.fc43
  • fedora 43: rtla 7.2.14-100.fc43 Β· ((GPL-2.0-only WITH Linux-syscall-note) OR CDDL-1.0) AND ((GPL-2.0-only WITH Linux-syscall-note) OR Linux-OpenIB) AND 0BSD AND Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND BSD-3-Clause-Clear AND CC0-1.0 AND GFDL-1.1-no-invariants-or-later AND GPL-1.0-or-later AND (GPL-1.0-or-later WITH Linux-syscall-note) AND GPL-2.0-only AND (GPL-2.0-only OR CDDL-1.0) AND (GPL-2.0-only OR GFDL-1.2-no-invariants-only) AND (GPL-2.0-only OR GFDL-1.2-no-invariants-or-later) AND (GPL-2.0-only WITH Linux-syscall-note) AND GPL-2.0-or-later AND (GPL-2.0-or-later OR CC-BY-4.0) AND (GPL-2.0-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH Linux-syscall-note) AND ISC AND LGPL-2.0-or-later AND (LGPL-2.0-or-later WITH Linux-syscall-note) AND LGPL-2.1-only AND (LGPL-2.1-only WITH Linux-syscall-note) AND LGPL-2.1-or-later AND (LGPL-2.1-or-later WITH Linux-syscall-note) AND (Linux-OpenIB OR GPL-2.0-only) AND (Linux-OpenIB OR GPL-2.0-only OR BSD-2-Clause) AND Linux-man-pages-copyleft AND MIT AND (MPL-1.1 OR GPL-2.0-only) AND (X11 OR GPL-2.0-only) AND (X11 OR GPL-2.0-or-later) AND Zlib AND (copyleft-next-0.3.1 OR GPL-2.0-or-later)
  • fedora 43: rtla 7.2.15-100.fc43 Β· ((GPL-2.0-only WITH Linux-syscall-note) OR CDDL-1.0) AND ((GPL-2.0-only WITH Linux-syscall-note) OR Linux-OpenIB) AND 0BSD AND Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND BSD-3-Clause-Clear AND CC0-1.0 AND GFDL-1.1-no-invariants-or-later AND GPL-1.0-or-later AND (GPL-1.0-or-later WITH Linux-syscall-note) AND GPL-2.0-only AND (GPL-2.0-only OR CDDL-1.0) AND (GPL-2.0-only OR GFDL-1.2-no-invariants-only) AND (GPL-2.0-only OR GFDL-1.2-no-invariants-or-later) AND (GPL-2.0-only WITH Linux-syscall-note) AND GPL-2.0-or-later AND (GPL-2.0-or-later OR CC-BY-4.0) AND (GPL-2.0-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH Linux-syscall-note) AND ISC AND LGPL-2.0-or-later AND (LGPL-2.0-or-later WITH Linux-syscall-note) AND LGPL-2.1-only AND (LGPL-2.1-only WITH Linux-syscall-note) AND LGPL-2.1-or-later AND (LGPL-2.1-or-later WITH Linux-syscall-note) AND (Linux-OpenIB OR GPL-2.0-only) AND (Linux-OpenIB OR GPL-2.0-only OR BSD-2-Clause) AND Linux-man-pages-copyleft AND MIT AND (MPL-1.1 OR GPL-2.0-only) AND (X11 OR GPL-2.0-only) AND (X11 OR GPL-2.0-or-later) AND Zlib AND (copyleft-next-0.3.1 OR GPL-2.0-or-later)
  • fedora 43: rtla 7.2.9-100.fc43
  • πŸ“œ the page's license: GPL-2.0
  • πŸ’– girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms