linux/tools/tracing/rtla
Tomas Glozar 88b71cd0aa rtla/timerlat_bpf: Stop tracing on user latency
commit e4240db933 upstream.

rtla-timerlat allows a *thread* latency threshold to be set via the
-T/--thread option. However, the timerlat tracer calls this *total*
latency (stop_tracing_total_us), and stops tracing also when the
return-to-user latency is over the threshold.

Change the behavior of the timerlat BPF program to reflect what the
timerlat tracer is doing, to avoid discrepancy between stopping
collecting data in the BPF program and stopping tracing in the timerlat
tracer.

Cc: stable@vger.kernel.org
Fixes: e34293ddce ("rtla/timerlat: Add BPF skeleton to collect samples")
Reviewed-by: Wander Lairson Costa <wander@redhat.com>
Link: https://lore.kernel.org/r/20251006143100.137255-1-tglozar@redhat.com
Signed-off-by: Tomas Glozar <tglozar@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2026-01-02 12:57:29 +01:00
..
sample tools/rtla: Improve exception handling in timerlat_load.py 2024-11-19 08:57:13 -05:00
src rtla/timerlat_bpf: Stop tracing on user latency 2026-01-02 12:57:29 +01:00
tests rtla/tests: Fix osnoise test calling timerlat 2025-12-18 14:03:10 +01:00
.gitignore rtla/timerlat: Add BPF skeleton to collect samples 2025-03-04 12:35:18 -05:00
Build tools/rtla: Use tools/build makefiles to build rtla 2024-03-20 05:39:06 +01:00
Makefile tracing tooling updates for 6.15: 2025-03-27 17:03:01 -07:00
Makefile.config rtla: Check pkg-config install 2025-08-19 20:32:54 -04:00
Makefile.rtla tools/rtla: Fix unassigned nr_cpus 2025-12-18 14:03:07 +01:00
Makefile.standalone tools/rtla: Use tools/build makefiles to build rtla 2024-03-20 05:39:06 +01:00
README.txt Documentation/rtla: Include BPF sample collection 2025-04-14 10:42:55 -06:00

RTLA: Real-Time Linux Analysis tools

The rtla meta-tool includes a set of commands that aims to analyze
the real-time properties of Linux. Instead of testing Linux as a black box,
rtla leverages kernel tracing capabilities to provide precise information
about the properties and root causes of unexpected results.

Installing RTLA

RTLA depends on the following libraries and tools:

 - libtracefs
 - libtraceevent
 - libcpupower (optional, for --deepest-idle-state)

For BPF sample collection support, the following extra dependencies are
required:

 - libbpf 1.0.0 or later
 - bpftool with skeleton support
 - clang with BPF CO-RE support

It also depends on python3-docutils to compile man pages.

For development, we suggest the following steps for compiling rtla:

  $ git clone git://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git
  $ cd libtraceevent/
  $ make
  $ sudo make install
  $ cd ..
  $ git clone git://git.kernel.org/pub/scm/libs/libtrace/libtracefs.git
  $ cd libtracefs/
  $ make
  $ sudo make install
  $ cd ..
  $ cd $libcpupower_src
  $ make
  $ sudo make install
  $ cd $rtla_src
  $ make
  $ sudo make install

For further information, please refer to the rtla man page.