4 * Improved output for delete_module, futex, and mbind system calls on Linux.
5 * Improved output for SG_IO ioctls on Linux.
6 * Support new Linux system calls move_pages, utimensat, signalfd, timerfd,
7 eventfd, getcpu, epoll_pwait.
12 * Several biarch improvements.
13 * Improved output for adjtimex, sysctl, quotactl, mount, umount.
14 * Support new Linux system calls *at, inotify*, pselect6, ppoll and unshare.
19 * Accept numeric system calls in -e.
24 * Introduce "-e trace=desc".
29 * Better x86-64 support for IA32 processes.
30 * Update PowerPC system calls.
31 * Better printing for Linux aio system calls.
35 * Quick fix release for build issues.
36 * One fix for Linux/ARM system call table.
41 * Print fault address for SIGSEGV/SIGBUS signals when available.
46 * Improve socket ioctl printing.
47 * Update Linux/IA64 syscall list.
48 * Fix Linux/x86-64 syscall argument extraction for 32-bit processes.
49 * Improve mount flags printing.
50 * Support symbolic printing of x86_64 arch_prctl parameters.
55 * Update syscall tables for Alpha, ARM, HPPA.
56 * Support new Linux syscalls mbind, set_mempolicy, get_mempolicy, waitid.
57 * Support Linux syscalls fadvise64, fadvise64_64, and epoll_*.
58 * Improve ioctl command name matching.
59 * Print RTC_* ioctl structure contents.
60 * Support newer RLIMIT_* values.
61 * Print struct cmsghdr details in sendmsg.
66 * Print attribute values in *xattr system calls on Linux.
67 * Include pread and pwrite calls in -e read and -e write tracing.
68 * Update SO_* and IP_* value lists and add IPV6_* values for socket options.
69 * Print clock_t values symbolically in Linux clock_* system calls.
73 * Bug fixes, Linux ioctl updates.
74 * David Miller contributed support for Linux/SPARC64.
82 * Update Linux ioctl lists.
83 * Update PF_* and AF_* value lists.
84 * The 4.5.3 -p behavior for NPTL threads applies only under -f, and got fixed.
89 * On Linux using NPTL threads, -p will now attach to all threads in a process.
90 * Handle new mq_* system calls in Linux 2.6.6 and later.
95 * Report some new VM_* bit values on Linux.
96 * Better output for Linux sched_* system calls.
101 * Display multiple ioctl name matches on Linux.
105 * New port to AMD's x86-64 architecture. One strace binary can
106 handle both new x86-64 and old i386 processes.
107 * Fixed support for LFS64 calls.
108 * New switch -E to add/remove environment variables for the command.
109 * Merged s390/s390x port.
110 * Trace an unbounded number of processes.
111 * Handle numerous new system calls in Linux 2.5, and new threads semantics.
112 * Fixed bugs with attach/detach leaving things stopped.
113 * Fixed traced process seeing ECHILD despite live, traced children
114 in waitpid calls with WNOHANG.
115 * Stuart Menefy contributed a port to Linux/SH.
116 * Stephen Thomas contributed a port to Linux/SH64.
117 * Many other bug fixes.
121 * Fix Linux/ia64 support, looks like someone renamed a few things on us
122 * Fix the ioctl setup for Linux, turned out it did not really work.
123 Improve the ioctl extracter as well so we decode some more ones.
127 * compile fixes for Linux/mips
131 * Linux ia64 and hppa ports added
132 * The usual Linux syscall updates (includes 32bit uid/gid support),
133 * Linux ioctl list updated
134 * Support IPv6 scope ids
135 * FreeBSD/i386 port added
136 * UnixWare and Solaris updates
137 * Better support for tracing multithreaded processes in Linux
141 * Compiles on glibc2.0 systems again
142 * Linux/S390 port added
143 * The usual Linux syscall updates
144 * we can follow fork on arm now
148 * Linux/MIPS port added
149 * Lots of Linux updates again
150 * Improved IPv6 support
156 * Compiles on glibc2.0 systems again
160 * Get stat structure properly on Linux 64bit archs
161 * Personalities work again
162 * Compile correctly on SunOS again
168 * Linux (ultra)sparc fixes
175 * add support for more Linux architectures (powerpc, sparc, arm)
176 * support lots more Linux syscalls
177 * fix signal handling
178 * add IPX and IPIP support
179 * check stray syscall after execv
180 * fix hanging children
182 Changes in version 3.1
183 ======================
186 * Linux 68k is supported
187 * Linux alpha is supported
188 * configure is upgraded to autoconf 2.x
189 * using -f in combination with -e now works correctly
190 * output can be piped to a program
191 * tracing setuid programs works better
192 * it is now reasonable to install strace setuid to root in some circumstances
193 * new useful tracing names like file and process to trace whole
194 classes of system calls, e.g. -efile traces all system calls that
195 take a file name as an argument
196 * IPC calls on SunOS 4.1.x are decoded
197 * Linux program memory is reliably dereferenced
198 * Linux decodes at least the name of all syscalls as of pre2.0.4
199 * various cosmetic changes and bug fixes
201 Changes from versions 2.x to version 3.0
202 ========================================
204 * filename arguments are neither abbreviated nor stringified
205 * string arguments are now true C strings using octal instead of hex by default
206 * preprocessor constants are never shortened (e.g. was RDONLY => now O_RDONLY)
207 * by default the output for multiple processes now goes into one file
208 * all structures, vectors, bitsets, etc. use consistent output formats
209 * the -c option now means count calls, -i does what the old -c used to do
211 New Features in version 3.0
212 ===========================
214 * non-ascii strings can be optionally printed entirely in hex
215 * the output format is readable when mutiple processes are generating output
216 * exit values are printed in an alignment column
217 * is is possible to suppress messages about attaching and detaching
218 * various tracing features can be enabled on a per syscall/signal/desc basis
219 * selective tracing of syscalls
220 * selective printing of syscall structures
221 * selective abbreviation of long structures on a per syscall basis
222 * selective printing of raw syscall arguments and results
223 * selective tracing of signals
224 * selective dumping of all I/O read from file descriptors
225 * selective dumping of all I/O written to file descriptors
226 * optional counting of time, calls, and errors for each syscall