blob: 9538df5cd7291bf6b378de86d6f7dbe9bbe74b63 [file] [log] [blame]
2010-04-13 Dmitry V. Levin <>
Prepare for 4.5.20 release
* NEWS: Update for 4.5.20 release.
* Version 4.5.20.
* debian/changelog: 4.5.20-1.
* strace.spec: 4.5.20-1.
2010-04-13 Frederik Schüler <>
Update debian/* files for the upcoming release
* debian/control: update standards-version to 3.8.4.
* debian/rules: allow parallel building.
* debian/rules: comment out verbose build, only needed for debugging.
* debian/rules: clean up clean: target, dh_clean does most of the work
* debian/rules: use *-stamp instead of stamp-*, so dh_clean can tidy
up for us.
2010-04-13 Heiko Carstens <>
Fix s390 system call table list
* linux/s390/syscallent.h: Add the missing entries for preadv and
pwritev to the system call table list.
* linux/s390x/syscallent.h: Likewise.
2010-04-07 Dmitry V. Levin <>
Update linux/ioctlent.h
* linux/ Search in asm-generic directory as well.
* linux/ioctlent.h: Regenerated.
Update linux/*/syscallent.h files to match Linux kernel v2.6.33
* linux/alpha/syscallent.h: Add 47 hooks.
* linux/arm/syscallent.h: Update hooks for pselect6, ppoll,
epoll_pwait. Add 11 hooks.
* linux/bfin/syscallent.h: Update hooks for prctl, fallocate,
signalfd4, eventfd2, epoll_create1, dup3, pipe2, perf_event_open.
Hook up recvmmsg.
* linux/hppa/syscallent.h: Update hooks for signalfd4, eventfd2,
epoll_create1, dup3, pipe2, perf_event_open.
* linux/i386/syscallent.h: Fix syscall name for the kexec_load hook.
Add 5 hooks.
* linux/ia64/syscallent.h: Fix syscall name for the kexec_load hook.
Add 4 hooks.
* linux/m68k/syscallent.h: Add 50 hooks.
* linux/powerpc/syscallent.h: Fix hook for timerfd_create. Fix
6 syscall names to match the kernel. Use sys_semop to parse semop.
Add 14 hooks.
* linux/s390/syscallent.h: Fix syscall name for the kexec_load hook.
Add 14 hooks.
* linux/s390x/syscallent.h: Likewise.
* linux/sh/syscallent.h: Add 13 hooks.
* linux/sh64/syscallent.h: Add 15 hooks.
* linux/sparc/syscallent.h: Add 22 hooks.
* linux/x86_64/syscallent.h: Add 5 hooks.
Enhance recvmmsg parser
* net.c (sys_recvmmsg): Decode mmsghdr structure on exit from the
syscall. Decode timespec structure both on entrance and on exit.
2010-04-07 Andreas Schwab <>
Decode recvmmsg syscall
* net.c (do_msghr): New function to print struct msghdr.
(printmsghdr): Use it.
(printmmsghdr, sys_recvmmsg): New.
* linux/syscall.h: Declare sys_recvmmsg.
(SYS_sub_recvmmsg): Define.
(SYS_socket_nsubcalls): Bump.
* linux/sparc/syscall.h: Likewise.
* linux/arm/syscallent.h: Add sys_recvmmsg.
* linux/bfin/syscallent.h: Likewise.
* linux/i386/syscallent.h: Likewise.
* linux/m68k/syscallent.h: Likewise.
* linux/powerpc/syscallent.h: Likewise.
* linux/s390/syscallent.h: Likewise.
* linux/s390x/syscallent.h: Likewise.
* linux/sh/syscallent.h: Likewise.
* linux/sh64/syscallent.h: Likewise.
* linux/sparc/syscallent.h: Likewise.
* linux/ia64/syscallent.h: Adjust.
2010-04-07 Dmitry V. Levin <>
* strace.1: Fix quoting of hyphens and formatting of strace options.
Split trace_syscall() for better readability
* syscall.c (trace_syscall): Split into trace_syscall_exiting() and
Implement -C option to combine regular and -c output
* defs.h (cflag_t): New enum.
* strace.1: Document -C option.
* strace.c (cflag): Update type.
(main): Handle -C option.
(trace): Update use of cflag.
* count.c (count_syscall): Move clearing of TCB_INSYSCALL to ...
* syscall.c (trace_syscall): ... here. Update use of cflag.
Based on patch by Adrien Kunysz.
Fix "make dist" regression introduced by commit v4.5.19-12-g5078770
* (EXTRA_DIST): Rename linux/syscallent.h to linux/i386/syscallent.h
* desc.c (sys_epoll_pwait): Fix output formatting bug.
* desc.c (decode_select): Fix potential stack buffer overflow.
2010-03-31 Dmitry V. Levin <>
Fix msgsnd indirect ipccall decoding
This regression was introduced by commit v4.5.18-136-g783f5bc.
* ipc.c (tprint_msgsnd): Add and use "flags" argument.
(sys_msgsnd): Pass "flags" argument to tprint_msgsnd().
Patch by Anton Blanchard.
2010-03-23 Mark Wielaard <>
Hook up inotify_init1 open mode flags printer
* file.c [LINUX] (sys_inotify_init1): New function.
* linux/syscall.h: Declare new sys_inotify_init1 handler.
* linux/bfin/syscallent.h: Hook up new handler.
* linux/hppa/syscallent.h: Likewise.
* linux/i386/syscallent.h: Likewise.
* linux/x86_64/syscallent.h: Likewise.
2010-03-09 Andreas Schwab <>
Avoid spurious error when checking for linux/netlink.h
* Include <asm/types.h> when checking for
2010-02-23 Andreas Schwab <>
Fix reporting signal mask by sigreturn on powerpc
* signal.c (sys_sigreturn) [POWERPC]: Skip dummy stack frame when
locating signal context.
2010-02-09 David Daney <>
Fix MIPS N32/N64 compile error
* syscall.c [LINUX_MIPSN32 || LINUX_MIPSN64] (syscall_enter): Pass
tcp->pid to ptrace().
2010-02-05 Chris Metcalf <>
Add support for the TILE architecture
* Add TILE to the list of supported architectures.
* defs.h: Define TCB_WAITEXECVE for TILE.
* linux/tile/syscallent.h: New file.
* (EXTRA_DIST): Add linux/tile/syscallent.h
* process.c (change_syscall, struct_user_offsets): Add TILE support.
* syscall.c (get_scno, get_error, syscall_enter): Likewise.
* mem.c (mmap_flags, print_mmap): Add MAP_CACHE_xxx TILE extensions
* signal.c (sigact_flags): Add SA_NOPTRACE.
(sys_sigreturn): Add TILE support.
2010-02-04 Dmitry V. Levin <>
Remove dead code
* defs.h (tv_tv): Remove.
* net.c (sys_xsetsockaddr): Remove commented out dead code.
* process.c (setarg, sys_execv, sys_execve, struct_user_offsets):
* signal.c (sys_sigsuspend): Likewise.
* strace.c (reaper, trace): Likewise.
* stream.c (internal_stream_ioctl): Likewise.
* syscall.c (trace_syscall): Likewise.
* term.c (term_ioctl): Likewise.
* util.c (tv_tv, umoven, uload, getpc, fixvfork, setbpt, clearbpt):
Merge Linux internal_clone() into internal_fork()
* defs.h (internal_clone): Remove.
* process.c (internal_clone): Merge into internal_fork().
(internal_fork) [!LINUX]: Remove dead code.
* syscall.c (internal_syscall): Replace internal_clone() with
* (INCLUDES): Remove redundant search directories.
2010-02-04 Frederik Schüler <>
Update debian/* files
* debian/control: add sparc64 to the architectures list.
This closes Debian bug #560062
* Backport commit f0df31e71a58c6e79ba77c1a9d84b2f38d44bec7 to fix FTBFS.
This closes Debian bug #560516
* debian/control: Update standards-version to 3.8.3.
* debian/control: Lower package priority to optional, matching
the archive override.
* debian/control: add ${misc:Depends} to Depends: lines where
* debian/watch: new file, allows automatic tracking of new
upstream versions.
* debian/source/format: new file, adapt to debian source format "quilt"
* debian/rules: indentation cleanups; use dh_testroot and dh_prep
in clean target.
2010-01-25 Andreas Schwab <>
Fix spurious failure of AC_STAT64 test
* acinclude.m4 (AC_STAT64): Include <sys/types.h> first.
2010-01-12 Andreas Schwab <>
Don't kill the process when detaching
* strace.c (detach): Call clearbpt when TCB_BPTSET is set.
2009-12-25 Dmitry V. Levin <>
Decode fifth argument of mremap syscall
* mem.c (sys_mremap): Decode fifth argument.
* linux/*/syscallent.h: Update the number of mremap syscall arguments.
2009-12-24 Chris Metcalf <>
* mem.c (sys_mbind): Display first argument in hex
* mem.c (mremap_flags): Add MREMAP_FIXED
2009-11-16 Mike Frysinger <>
Move i386-specific files out of common linux dir
* linux/syscallent.h: Moved to ...
* linux/i386/syscallent.h: ... here.
* linux/ia64/syscallent.h: Update i386 syscallent.h include.
* linux/sparc/ Likewise.
* linux/x86_64/syscallent1.h: Likewise.
2009-11-16 Andreas Schwab <>
Remove support for pre-C89
* defs.h: Remove references to __STDC__ and P macros.
* strace.c: Likewise.
2009-11-13 Dmitry V. Levin <>
Decode more SOL_PACKET socket options
* net.c (sockpacketoptions): Add more PACKET_* entries.
(sys_getsockopt): Decode PACKET_STATISTICS.
(printsockopt): Decode PACKET_RX_RING and PACKET_TX_RING.
Patch by Gabor Gombas.
2009-11-11 Andreas Schwab <>
Ignore errors if a thread is killed
* util.c (clearbpt): Ignore ESRCH error.
2009-11-06 Bernhard Reutner-Fischer <>
Fix handling of Linux systems without struct statfs64
* acinclude.m4 (AC_STATFS64): New macro to check for struct statfs64.
* Call AC_STATFS64.
* file.c (printstatfs64, sys_statfs64, sys_fstatfs64): Compile only
if struct statfs64 is available.
2009-11-06 Dmitry V. Levin <>
Fix getsockopt decoding on architectures where sizeof(long) > sizeof(int)
* net.c (sys_getsockopt): Optimize output a bit.
Decode integer argument using printnum_int(), patch by Gabor Gombas.
Check umove() return code
* bjm.c (sys_query_module): Print input parameters when entering
syscall. Fix handling of syscall error. Handle unlikely umove()
* ipc.c (tprint_msgrcv): New function. Move part of msgrcv parser code
here, add check umove() return code.
(sys_msgsnd): Print msqid parameter as int instead of long.
(sys_msgrcv): Likewise. Use tprint_msgrcv().
* process.c (print_affinitylist): Check umove() return code.
* sock.c (sock_ioctl): Handle unlikely umove() failure in the
Fix check for linux/netlink.h on Linux 2.6.32-rc5+
* (AC_CHECK_HEADERS): In check for linux/netlink.h, include
sys/socket.h instead of linux/socket.h beforehand.
2009-11-04 Andreas Schwab <>
Decode fallocate on PowerPC
* linux/powerpc/syscallent.h: Decode fallocate.
Factor out printing of 64bit syscall argument
* defs.h (ALIGN64): Remove.
(printllval): Declare.
* util.c (printllval): Define.
* file.c (sys_readahead): Use printllval.
(sys_lseek64): Likewise.
(sys_truncate64): Likewise.
(sys_ftruncate64): Likewise.
(sys_fadvise64): Likewise.
(sys_fadvise64_64): Likewise.
(sys_fallocate): Likewise.
* io.c (sys_pread): Likewise.
(sys_pwrite): Likewise.
(sys_pread64): Likewise.
(sys_pwrite64): Likewise.
* mem.c (sys_mmap64): Likewise.
2009-11-03 Andreas Schwab <>
Correct decoding of readahead and fadvice64(_64) on PowerPC
* file.c (sys_readahead): Align 64bit argument. Handle PowerPC64
like other 64bit architectures.
(sys_fadvise64): Likewise.
(sys_fadvise64_64): Handle PowerPC like ARM.
* linux/powerpc/syscallent.h (sys_readahead): Account for 64bit
argument alignment on PowerPC32.
2009-10-27 Andreas Schwab <>
Maintain separate print column for each process
* defs.h (struct tcp): Add curcol.
* strace.c: (alloc_tcb): Initialize it.
(trace): Use curcol from current process and save it before
(tprintf): Don't modify curcol on output error.
2009-10-21 Roland McGrath <>
* strace.spec: 4.5.19-1 release.
2009-10-21 Dmitry V. Levin <>
* file.c (printstat64): Cleanup trailing whitespace.
2009-10-16 Andreas Schwab <>
Fix decoding of newfstatat syscall on x86-64
* file.c (printstat64) [LINUX && X68_64]: If tracing a 64-bit
process redirect to printstat.
Fixes RH#529316 "Field values shown for "newfstatat" system
call are incorrect"
2009-10-12 Dmitry V. Levin <>
* (AC_CHECK_HEADERS): Remove asm/reg.h.
2009-10-12 Mike Frysinger <>
sparc/linux: Rewrite to use asm/ptrace.h
The current sparc/linux code uses asm/reg.h, but recent Linux kernels
dropped that header completely. So switch over to the ptrace headers
as those should stick around indefinitely as part of the ABI.
* defs.h [LINUXSPARC] (U_REG_G1, U_REG_O0, U_REG_O1): Define.
* process.c: Drop asm/regs.h include.
[SPARC || SPARC64] (change_syscall): Change struct regs to struct pt_regs.
* signal.c: Drop asm/regs.h include.
(m_siginfo_t): Unify [SPARC || SPARC64] and [MIPS].
[SPARC || SPARC64] (sys_sigreturn): Change struct regs to struct pt_regs.
* syscall.c: Drop asm/regs.h include.
[SPARC || SPARC64] (internal_syscall, get_scno, get_error, force_result,
syscall_enter): Change struct regs to struct pt_regs.
* util.c: Drop asm/regs.h include.
(_hack_syscall5, _ptrace): Delete.
[SPARC || SPARC64] (getpc, printcall, arg_setup_state): Change
struct regs to struct pt_regs.
2009-10-11 Roland McGrath <>
* make-dist: Clean up.
2009-10-09 Dmitry V. Levin <>
* make-dist: New script for preparing release tarballs.
* git-set-file-times: Import from rsync.
* [MAINTAINER_MODE]: Define and export TAR_OPTIONS.
2009-10-08 Dmitry V. Levin <>
Enhance msgsnd() parser
* ipc.c (tprint_msgsnd): New function. Move msgsnd parser code here,
add check for umove() return code.
(sys_msgsnd): Use tprint_msgsnd().
* NEWS: Update for 4.5.19 release.
Enhance semop()/semtimedop() sembuf parser
* ipc.c (tprint_sembuf): New function. Move sembuf parser code here,
add abbrev() support.
(sys_semop, sys_semtimedop): Use tprint_sembuf().
2009-10-08 Jakub Bogusz <>
Add pretty printing of sembuf argument to semop() and semtimedop()
* ipc.c (semop_flags): New xlat structure.
(sys_semop, sys_semtimedop): Add pretty printing of sembuf argument.
2009-10-08 Mike Frysinger <>
Add support for Linux/no-mmu with vfork
* (AC_CHECK_FUNCS): Add fork.
* strace.c (strace_vforked): Define.
(startup_child): Do not raise SIGSTOP if vforked.
(trace): Skip first exec when starting up after vforked.
* syscall.c [BFIN] (get_scno): Drop waitexec checks.
Avoid malloc(0) in getdents parsers
On end of directory, getdents returns 0. This return value is used to
then try and do malloc(0), but on some systems this will always return
NULL. Since the code won't read the pointer in question if len is 0,
then don't bother calling malloc(0) and set the pointer to NULL ourself.
* file.c (sys_getdents, sys_getdents64): Avoid malloc(0) call.
2009-10-07 Mike Frysinger <>
Add sys_nanosleep() prototype for sparc
* linux/sparc/syscall.h (sys_nanosleep): New prototype.
Reported by Frederik Schüler.
Silence compiler warnings about implicit cast from pointer to integer
* util.c (do_ptrace): Cast ptrace() 4th arg to long.
(ptrace_restart): Drop void* cast on ptrace() 4th arg.
Ignore .gdb files from FLAT toolchains
* .gitignore: Add /*.gdb.
* (AC_CHECK_FUNCS): Sort and expand.
Blackfin: Update ioctl/syscall lists
* linux/bfin/ioctlent.h: Sync list with latest kernel sources.
* linux/bfin/syscallent.h: Likewise.
ioctlsort: Check ppc hosts too
* linux/ioctlsort.c: Check for __powerpc__.
2009-10-07 Andreas Schwab <>
Fix build on ia64
* linux/ia64/syscallent.h: Update for addition of accept4 syscall
in ../syscallent.h.
2009-10-07 Roland McGrath <>
* strace.spec (%doc): Add ChangeLog-CVS.
* (srpm): New phony target.
* (EXTRA_DIST): Add ChangeLog.
($(srcdir)/ChangeLog): New target, replaces gen-changelog phony target.
Put it inside [MAINTAINER_MODE].
2009-10-06 Dmitry V. Levin <>
* NEWS: Update for 4.5.19 release.
2009-10-05 Frederik Schüler <>
Prepare debian/* files for release
* debian/rules: Do not ship ChangeLog anymore.
* debian/control: Update to Debian standards version 3.8.1, and remove
Roland from the Maintainers list. This closes Debian bug #521458.
* debian/changelog: Document changes and prepare for release.
2009-10-05 Dmitry V. Levin <>
* defs.h [HPPA]: Lower MAX_ARGS from 32 to 6.
* ipc.c [LINUX] (sys_shmat): HPPA does not use an IPC multiplexer.
Based on patch from Carlos O'Donell.
2009-10-05 Carlos O'Donell <>
* linux/hppa/syscallent.h: Update syscalls.
Based on work by Kyle McMartin and Helge Deller.
Fix SA_HANDLER function pointer comparisons for hppa
* signal.c (sys_sigaction): Cast SA_HANDLER function pointers to long.
(sys_rt_sigaction): Likewise.
2009-10-05 Edgar E. Iglesias <>
CRIS: Correct first argument to upeek()
This complements commit ea0e6e80260d2b1b7ad40282012b0e47869bcddf.
* syscall.c [CRISV10 || CRISV32] (syscall_fixup, syscall_enter): Pass
tcp pointer instead of pid to upeek().
* util.c [CRISV10 || CRISV32] (printcall): Likewise.
2009-10-05 Dmitry V. Levin <>
* signal.c (do_signalfd): Fix typo in output format.
2009-09-21 Dmitry V. Levin <>
* (gen_changelog_start_date): Fix date.
2009-09-19 Dmitry V. Levin <>
Prepare for 4.5.19 release
* NEWS: Update for 4.5.19 release.
* Version 4.5.19.
* debian/changelog: 4.5.19-1.
* strace.spec: 4.5.19-1.
Update debian/* to 4.5.18-1
* debian/changelog: Update to 4.5.18-1.
* debian/compat: Set compatibility level to 7.
* debian/control (Build-Depends): Update debhelper requirement.
(strace, strace64): Add Section and Priority tags.
2009-09-19 Kirill A. Shutemov <>
Fix fadvise64 decoding on ARM
* file.c (sys_fadvise64_64) [ARM]: Fix argument ordering.
2009-09-18 Dmitry V. Levin <>
Fix follow fork/vfork on Linux ARM OABI
__NR_SYSCALL_BASE eis 0 for EABI and is 0x900000 for OABI.
* process (change_syscall) [LINUX && ARM]: Mask off the high order bits
when changing syscall.
Reviewed-by: Kirill A. Shutemov <>
2009-09-18 Mike Frysinger <>
Mark shell scripts as executable
Ignore ioctlsort helper program
* .gitignore: Add ioctlsort.
linux/errno: Add ERFKILL
* linux/errnoent.h: Change ERRNO_132 to ERFKILL according to errno 132
definition introduced in Linux 2.6.31.
2009-09-01 Paolo Bonzini <>
Add accept4 socketcall
This second patch in the series adds support for accept4 as a socketcall
sub-call. Besides the need to renumber all system calls, this poses
no problem.
Tested on i686.
* linux/arm/syscallent.h: Add accept4 socketcall.
* linux/m68k/syscallent.h: Likewise.
* linux/powerpc/syscallent.h: Likewise.
* linux/s390/syscallent.h: Likewise.
* linux/s390x/syscallent.h: Likewise.
* linux/sh/syscallent.h: Likewise.
* linux/sh64/syscallent.h: Likewise.
* linux/sparc/syscallent.h: Likewise.
* linux/syscallent.h: Likewise.
* linux/sparc/syscall.h (SYS_sub_accept4): Declare.
(SYS_socket_nsubcalls): Update.
* linux/syscall.h: Likewise.
Replace x86-64 paccept with accept4
This patch changes the paccept syscall to accept4 for x86-64, since
the former was dropped in Linux kernel commit v2.6.27-rc7-14-g2d4c826.
At the same time, it adds support for pretty printing its arguments.
* linux/x86_64/syscallent.h: Replace paccept with accept4,
hook in sys_accept4.
* net.c (sys_accept): Leave a small stub calling the new...
(do_accept): ... function, which also adds a flags_arg argument.
(sys_accept4): New.
2009-08-28 Andreas Schwab <>
Zero-extend 32-bit addresses when printing argv array.
(printargv): Zero-extend 32-bit addresses.
Fixes RH#519480 "64-bit strace is lazy on execve of 32-bit
2009-08-12 Andreas Schwab <>
Add more futex decoding.
(futexops): Add entries for them.
(sys_futex): Decode FUTEX_CMP_REQUEUE_PI and
2009-07-08 Dmitry V. Levin <>
Generate ChangeLog from git log
* .gitignore: Add ChangeLog
* ChangeLog: Rename to ChangeLog-CVS.
* (gen-changelog): New rule.
(dist-hook): Depend on it.
(EXTRA_DIST): Add ChangeLog-CVS.
* README-hacking: Describe changes.
* gitlog-to-changelog: Import from gnulib.
See ChangeLog-CVS for older changes.