strace 6.12

strace is a diagnostic, debugging and instructional userspace utility for Linux. It is used to monitor and tamper with interactions between processes and the Linux kernel, which include system calls, signal deliveries, and changes of process state. The operation of strace is made possible by the kernel feature known as ptrace.

Tags c debugger software-development
License GNU LGPL
State stable

Recent Releases

6.1230 Nov 2024 05:25 minor feature: Noteworthy changes in strace 6.12 (2024-11-18) Improvements. Implemented decoding of EPIOCGPARAMS and EPIOCSPARAMS ioctl commands. Implemented decoding of NS_GET_MNTNS_ID, NS_GET_PID_FROM_PIDNS, NS_GET_TGID_FROM_PIDNS, NS_GET_PID_IN_PIDNS, NS_GET_TGID_IN_PIDNS, NS_MNT_GET_INFO, NS_MNT_GET_NEXT, and NS_MNT_GET_PREV ioctl commands. Implemented decoding of FRA_DSCP netlink attribute. Implemented decoding of IORING_REGISTER_CLOCK and IORING_REGISTER_CLONE_BUFFERS opcodes of io_uring_register syscall. Updated decoding of struct landlock_ruleset_attr. Updated lists of AUDIT_*, ETHTOOL_*, F_*, IORING_*, LSM_*, MAP_*, MSG_*, NT_*, SCHED_*, SCM_*, SO_*, and V4L2_ constants. Updated lists of ioctl commands from Linux 6.12. the syscall name printed by strace when PTRACE_GET_SYSCALL_INFO is in use and a syscall is restarted by a just attached tracee using restart_syscall mechanism. Contributors. This release was made possible by the contributions of many people. The maintainers are grateful to everyone who has contributed changes or reports. These include: Dmitry V. Levin. Eugene Syromyatnikov. Florian Weimer. Gleb Fotengauer-Malinovskiy. Khem Raj. Please refer to the CREDITS file for the full list of strace contributors.
6.1124 Nov 2024 09:45 minor feature: Noteworthy changes in strace 6.11 (2024-09-15) Improvements. Implemented decoding of uretprobe syscall. Implemented decoding of WDIOC_GETSUPPORT and WDIOC_SETOPTIONS ioctl commands. Enhanced decoding of unknown ioctl commands in non-abbreviated mode by printing the contents of the ioctl argument buffer in hexadecimal format. Updated decoding of listmount, statmount, and statx syscalls. Updated lists of ETHTOOL_*, IORING_*, IPPROTO_*, RWF_*, STATX_*, and V4L2_* constants. Updated lists of ioctl commands from Linux 6.11. Contributors. This release was made possible by the contributions of many people. The maintainers are grateful to everyone who has contributed changes or reports. These include: Dmitry V. Levin. Edjunior Machado. Eugene Syromyatnikov. Gleb Fotengauer-Malinovskiy. Masatake YAMATO. Sahil Siddiq. tstabrawa. Please refer to the CREDITS file for the full list of strace contributors.
6.1021 Jul 2024 12:58 minor feature: Noteworthy changes in strace 6.10 (2024-07-21) * Improvements * Implemented --decode-fds=eventfd option to retrieve eventfd object details associated with eventfd file descriptors. * Implemented decoding of NETLINK_GENERIC nlctrl protocol. * Implemented decoding of F_DUPFD_QUERY fcntl. * Implemented decoding of mseal syscall. * Updated decoding of statx and prctl syscalls. * Updated decoding of BPF_RAW_TRACEPOINT_OPEN bpf command. * Updated lists of BPF_*, IORING_*, KEXEC_*, KEY_*, LANDLOCK_*, PR_*, STATX_*, TCP_*, TEE_*, V4L2_*, and *_MAGIC constants. * Updated lists of ioctl commands from Linux 6.10. * Bug fixes * Worked around a bug introduced in Linux 6.5 that affected system call tampering on riscv64. Contributors This release was made possible by the contributions of many people. The maintainers are grateful to everyone who has contributed changes or bug reports. These include: * Brandon Maier * Dmitry V. Levin * Eugene Syromyatnikov * Gleb Fotengauer-Malinovskiy * Jan Macku * Masatake YAMATO * Sahil Siddiq * Sergei Trofimovich Please refer to the CREDITS file for the full list of strace contributors.
6.915 May 2024 09:05 minor feature: Noteworthy changes in strace 6.9 (2024-05-14) Improvements. Implemented --always-show-pid option. The --user -u option has learned to recognize numeric UID:GID pair, allowing e.g. statically-built strace to be used without invoking nss plugins. Implemented decoding of IORING_REGISTER_SYNC_CANCEL, IORING_REGISTER_FILE_ALLOC_RANGE, IORING_REGISTER_PBUF_STATUS, IORING_REGISTER_NAPI, and IORING_UNREGISTER_NAPI opcodes of io_uring_register syscall. Implemented decoding of BPF_TOKEN_CREATE bpf syscall command. Updated decoding of io_uring_register and pidfd_send_signal syscalls. Updated lists of BPF_*, CAN_*, IORING_*, KEY_*, LSM_*, MPOL_*, NT_*, RWF_*, PIDFD_*, PTP_*, TCP_*, and *_MAGIC constants. Updated lists of ioctl commands from Linux 6.9. Contributors. This release was made possible by the contributions of many people. The maintainers are grateful to everyone who has contributed changes or reports. These include: Christian Ehrhardt. Dmitry V. Levin. Gleb Fotengauer-Malinovskiy. Michael Vogt. Yao Zi. Zygmunt Krynicki. Please refer to the CREDITS file for the full list of strace contributors.
6.821 Mar 2024 12:53 minor feature: Improvements Renamed --stack-traces to --stack-trace for consistency. Old option is retained for backwards compatibility. Implemented --stack-trace-frame-limit=N option for configuring the limit of the number of printed backtrace frames. Implemented decoding of statmount, listmount, lsm_get_self_attr, lsm_set_self_attr, and lsm_list_modules syscalls. Implemented decoding of setsockopt(TCP_AO_ADD_KEY). Updated decoding of landlock_create_ruleset and landlock_add_rule syscalls. Updated decoding of SMC_DIAG_DMBINFO netlink attribute. Updated decoding of UBI_IOCATT ioctl command. Enhanced decoding of mount attributes of fsmount and mount_setattr syscalls. Updated lists of BPF_*, KEXEC_*, KVM_*, PERF_*, SOL_*, STATX_*, UFFD_*, and V4L2_ constants. Updated lists of ioctl commands from Linux 6.8.
6.702 Feb 2024 16:04 minor feature: Improvements * Implemented -kk/--stack-traces=source option for libdw-based stack tracing. * Implemented decoding of futex_wake, futex_wait, and sys_futex_requeue syscalls. * Updated lists of BPF_*, BTRFS_*, IORING_*, KVM_*, LANDLOCK_*, PR_*, and TCP_* constants. * Updated lists of ioctl commands from Linux 6.7. * Bug fixes * Fix strace -r during the first second after booting to show correct relative timestamps. * Fix strace -f entering deadlock on exit if there are tracee processes spawned using vfork semantics.
6.631 Oct 2023 11:58 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
6.501 Sep 2023 22:37 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
6.426 Jun 2023 22:36 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
6.308 May 2023 21:21 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
6.226 Feb 2023 23:02 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
6.112 Dec 2022 20:38 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
6.029 Oct 2022 18:44 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
5.1818 Jun 2022 20:53 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
5.1727 Mar 2022 13:13 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
5.1610 Jan 2022 12:13 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
5.1501 Dec 2021 21:20 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
5.1402 Sep 2021 12:27 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
5.1319 Jul 2021 00:35 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
5.1226 Apr 2021 14:45 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
5.1117 Feb 2021 17:52 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
5.1014 Dec 2020 09:37 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
5.924 Sep 2020 11:20 major feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
5.806 Aug 2020 18:39 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
5.701 Jun 2020 21:57 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
5.607 Apr 2020 12:55 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
5.506 Feb 2020 17:48 minor bugfix: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
5.429 Nov 2019 15:09 minor bugfix: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
5.325 Sep 2019 15:06 major feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
5.212 Jul 2019 17:50 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
5.122 May 2019 14:39 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
5.019 Mar 2019 06:22 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
4.2627 Dec 2018 02:41 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements. Starting with this release, strace is provided under the terms of the GNU Lesser General Public License version 2.1 or later.
4.2530 Oct 2018 18:05 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
4.2414 Aug 2018 02:01 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
4.2314 Jun 2018 23:52 major feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
4.2114 Feb 2018 01:54 major feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
4.2013 Nov 2017 23:44 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
4.1905 Sep 2017 22:07 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
4.1805 Jul 2017 18:14 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
4.1614 Feb 2017 21:38 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
4.1514 Dec 2016 21:51 major feature: This is a stable release which, besides the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements, introduces a syscall fault injection feature.
4.1326 Jul 2016 21:12 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
4.1231 May 2016 17:48 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
4.1122 Dec 2015 00:40 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
4.1006 Mar 2015 16:23 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.
4.915 Aug 2014 21:36 minor feature: This is a stable release, with the usual bugfixes, enhanced support for fresh Linux kernels, and other improvements.