On alpha, struct old_sigaction.sa_flags has a 32-bit type. On mips, only first word of old_sigaction.sa_mask is read. On all architectures except alpha and mips that have old sigaction syscall, struct old_sigaction has sa_restorer field that has to be decoded. * signal.c (struct old_sigaction) [ALPHA]: Change sa_flags type to unsigned int, add ATTRIBUTE_PACKED. [MIPS]: Dhrink sa_mask array to 1 element. [!ALPHA && !MIPS]: Define sa_restorer field unconditionally. (struct old_sigaction32): Likewise. (decode_old_sigaction) [!current_wordsize]: Initialize sa_restorer field from old_sigaction32.sa_restorer unconditionally. [!ALPHA && !MIPS]: Print old_sigaction.sa_restorer if SA_RESTORER flag is set. * NEWS: Mention this change.
strace - the linux syscall tracer
This is strace -- a diagnostic, debugging and instructional userspace utility with a traditional command-line interface 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.
strace is released under a Berkeley-style license at the request of Paul Kranenburg; see the file COPYING for details.
See the file NEWS for information on what has changed in recent versions.
Please read the file INSTALL-git for installation instructions.
The user discussion and development of strace take place on the strace mailing list -- everyone is welcome to post bug reports, feature requests, comments and patches to strace-devel@lists.sourceforge.net. The mailing list archives are available at https://sourceforge.net/p/strace/mailman/strace-devel/ and other archival sites.