Package: strace Version: 6.5-0.1 When the process being strace'd is PID 1 in a PID namespace and calls abort(), strace shows an infinite SIGSEGV loop. Here's a test case: #include <stdlib.h> int main() { abort(); }
With glibc, running "unshare -prf ./a.out" results in the process dying from a segmentation fault. By contrast, "strace -f unshare -prf ./a.out" produces an infinite loop of segfaults. Perhaps this could be considered a bug in glibc or Linux, but it seems less than ideal that strace loops forever in a case where the non-strace'd process would have died. If strace is capable of detecting that the traced process has no handler for the signal, it would be nice to detect and avoid the loop. - Michael -- System Information: Debian Release: trixie/sid APT prefers unstable-debug APT policy: (500, 'unstable-debug'), (500, 'unstable'), (1, 'experimental') Architecture: amd64 (x86_64) Kernel: Linux 6.6.13-amd64 (SMP w/32 CPU threads; PREEMPT) Locale: LANG=en_CA.UTF-8, LC_CTYPE=en_CA.UTF-8 (charmap=UTF-8), LANGUAGE=en_CA:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages strace depends on: ii libc6 2.37-15 ii libunwind8 1.6.2-3 strace recommends no packages. strace suggests no packages. -- no debconf information
signature.asc
Description: PGP signature