linux/tools
Linus Torvalds 9e1e9d6602 RTLA patches for v7.1:
- Simplify option parsing
 
   Auto-generate getopt_long() optstring for short options from long options
   array, avoiding the need to specify it manually and reducing the surface for
   mistakes.
 
 - Add unit tests
 
   Implement unit tests (make unit-tests) using libcheck, next to existing
   runtime tests (make check). Currently, three functions from utils.c are
   tested.
 
 - Add --stack-format option
 
   In addition to stopping stack pointer decoding (with -s/--stack option)
   on first unresolvable pointer, allow also skipping unresolvable pointers
   and displaying everything, configurable with a new option.
 
 - Unify number of CPUs into one global variable
 
   Use one global variable, nr_cpus, to store the number of CPUs instead of
   retrieving it and passing it at multiple places.
 
 - Fix behavior in various corner cases
 
   Make RTLA behave correctly in several corner cases: memory allocation
   failure, invalid value read from kernel side, thread creation failure,
   malformed time value input, and read/write failure or interruption by
   signal.
 
 - Improve string handling
 
   Simplify several places in the code that handle strings, including
   parsing of action arguments. A few new helper functions and variables
   are added for that purpose.
 
 - Get rid of magic numbers
 
   Few places handling paths use a magic number of 1024. Replace it with
   MAX_PATH and ARRAY_SIZE() macro.
 
 - Unify threshold handling
 
   Code that handles response to latency threshold is duplicated between
   tools, which has led to bugs in the past. Unify it into a new helper
   as much as possible.
 
 - Fix segfault on SIGINT during cleanup
 
   The SIGINT handler touches dynamically allocated memory. Detach it
   before freeing it during cleanup to prevent segmentation fault and
   discarding of output buffers. Also, properly document SIGINT handling
   while at it.
 -----BEGIN PGP SIGNATURE-----
 
 iIoEABYKADIWIQRRSw7ePDh/lE+zeZMp5XQQmuv6qgUCad4njhQccm9zdGVkdEBn
 b29kbWlzLm9yZwAKCRAp5XQQmuv6qoKkAP0bYgkuqvyBsplZf1Mqil7IRM3tTFni
 XJdkFFr6E6jS/gEAynaf7oq4gz7isvMvZZTOVcl1VflQAjLuY9ezO5LQzw0=
 =mR69
 -----END PGP SIGNATURE-----

Merge tag 'trace-rtla-v7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace

Pull RTLA updates from Steven Rostedt:

 - Simplify option parsing

   Auto-generate getopt_long() optstring for short options from long
   options array, avoiding the need to specify it manually and reducing
   the surface for mistakes.

 - Add unit tests

   Implement unit tests (make unit-tests) using libcheck, next to
   existing runtime tests (make check). Currently, three functions from
   utils.c are tested.

 - Add --stack-format option

   In addition to stopping stack pointer decoding (with -s/--stack
   option) on first unresolvable pointer, allow also skipping
   unresolvable pointers and displaying everything, configurable with a
   new option.

 - Unify number of CPUs into one global variable

   Use one global variable, nr_cpus, to store the number of CPUs instead
   of retrieving it and passing it at multiple places.

 - Fix behavior in various corner cases

   Make RTLA behave correctly in several corner cases: memory allocation
   failure, invalid value read from kernel side, thread creation
   failure, malformed time value input, and read/write failure or
   interruption by signal.

 - Improve string handling

   Simplify several places in the code that handle strings, including
   parsing of action arguments. A few new helper functions and variables
   are added for that purpose.

 - Get rid of magic numbers

   Few places handling paths use a magic number of 1024. Replace it with
   MAX_PATH and ARRAY_SIZE() macro.

 - Unify threshold handling

   Code that handles response to latency threshold is duplicated between
   tools, which has led to bugs in the past. Unify it into a new helper
   as much as possible.

 - Fix segfault on SIGINT during cleanup

   The SIGINT handler touches dynamically allocated memory. Detach it
   before freeing it during cleanup to prevent segmentation fault and
   discarding of output buffers. Also, properly document SIGINT handling
   while at it.

* tag 'trace-rtla-v7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace: (28 commits)
  Documentation/rtla: Document SIGINT behavior
  rtla: Fix segfault on multiple SIGINTs
  rtla/utils: Fix loop condition in PID validation
  rtla/utils: Fix resource leak in set_comm_sched_attr()
  rtla/trace: Fix I/O handling in save_trace_to_file()
  rtla/trace: Fix write loop in trace_event_save_hist()
  rtla/timerlat: Simplify RTLA_NO_BPF environment variable check
  rtla: Use str_has_prefix() for option prefix check
  rtla: Enforce exact match for time unit suffixes
  rtla: Use str_has_prefix() for prefix checks
  rtla: Add str_has_prefix() helper function
  rtla: Handle pthread_create() failure properly
  rtla/timerlat: Add bounds check for softirq vector
  rtla: Simplify code by caching string lengths
  rtla: Replace magic number with MAX_PATH
  rtla: Introduce common_threshold_handler() helper
  rtla/actions: Simplify argument parsing
  rtla: Use strdup() to simplify code
  rtla: Exit on memory allocation failures during initialization
  tools/rtla: Remove unneeded nr_cpus from for_each_monitored_cpu
  ...
2026-04-15 17:48:24 -07:00
..
accounting
arch - Complete LASS enabling: deal with vsyscall and EFI 2026-04-14 14:24:45 -07:00
bootconfig
bpf bpftool: add missing fsession to the usage and docs of bpftool 2026-04-12 12:42:38 -07:00
build RTLA patches for v7.1: 2026-04-15 17:48:24 -07:00
certs
cgroup
counter
crypto
debugging
dma
docs docs: kdoc_diff: add a helper tool to help checking kdoc regressions 2026-03-30 10:54:13 -06:00
firewire
firmware
gpio
hv
iio
include mm.git review status for linus..mm-stable 2026-04-15 12:59:16 -07:00
kvm/kvm_stat
laptop
leds
lib mm.git review status for linus..mm-stable 2026-04-15 12:59:16 -07:00
memory-model
mm
net tools: ynl: add sample for wireguard 2026-04-14 11:48:04 -07:00
objtool objtool updates for v7.1: 2026-04-14 13:00:04 -07:00
pcmcia
perf RISC-V updates for v7.0-rc8 2026-04-10 17:27:08 -07:00
power Power management updates for 7.1-rc1 2026-04-13 19:47:52 -07:00
rcu
sched
sched_ext tools/sched_ext: Add explicit cast from void* in RESIZE_ARRAY() 2026-04-13 06:14:11 -10:00
scripts Kbuild/Kconfig updates for 7.1 2026-04-14 09:18:40 -07:00
sound
spi
testing ktest updates for v7.1: 2026-04-15 17:11:22 -07:00
thermal
time
tracing RTLA patches for v7.1: 2026-04-15 17:48:24 -07:00
unittests docs: kdoc: better handle source when producing YAML output 2026-03-25 13:36:46 -06:00
usb
verification rv: Allow epoll in rtapp-sleep monitor 2026-04-01 15:18:30 +02:00
virtio
wmi
workqueue tools/workqueue: add CACHE_SHARD support to wq_dump.py 2026-04-01 10:24:18 -10:00
writeback
Makefile