d35df493b4e7684c50d2d2fa032ee3a7ac228009 |
|
16-Feb-2017 |
Elliott Hughes <enh@google.com> |
Upgrade strace to 4.16 from 4.14. Noteworthy changes in release 4.16 (2017-02-14) * Improvements * Implemented syscall return value injection (-e inject=SET:retval= option). * Implemented signal injection (-e inject=SET:signal= option). * Implemented decoding of SUID_DUMP_* constants in PR_[GS]ET_DUMPABLE. * Implemented decoding of all SG_* ioctl commands. * Implemented decoding of ustat syscall. * Implemented decoding of BPF_OBJ_PIN, BPF_OBJ_GET, BPF_PROG_ATTACH, and BPF_PROG_DETACH commands of bpf syscall. * Enhanced decoding of sg_io_hdr and sg_io_v4 structures. * Enhanced decoding of get_robust_list, getrandom, io_submit, set_robust_list syscalls. * Enhanced decoding of entities of kernel long type on x32 and mips n32 ABIs. * Updated lists of IP_*, IPV6_*, and LOOP_* constants. * Updated lists of ioctl commands from Linux 4.10. * Added decoding of recently added syscalls on avr32, microblaze, ppc, and ppc64. * Bug fixes * Fixed pathmatch of oldselect syscall on 64-bit architectures. * Fixed decoding of mmap2 syscall on s390 when arguments are not available. * Fixed decoding of kexec_file_load, mprotect, pkey_mprotect, prctl, preadv*, and pwritev* syscalls on x32. * Fixed printing of string arguments of getxattr and setxattr syscalls when -s option is used to limit the printed string size. * Fixed decoding of ifconf, ifreq, and loop_info structures on non-native personalities. * Fixed decoding of SG_* and LOOP_* ioctl commands. * Fixed build on mips with musl libc. * Fixed cross-building of ioctlsort. * Applied minor formatting fixes to the manual page. Noteworthy changes in release 4.15 (2016-12-14) * Changes in behavior * Time stamps are now printed according to ISO 8601. * Changed output format of val3 parameter of futex FUTEX_WAKE_OP operation. * The last argument of mincore, sched_getaffinity, and sched_setaffinity syscalls is now formatted as an array. * Improvements * Implemented syscall fault injection (-e fault=... option). * Implemented decoding of DM_* ioctl commands. * Implemented decoding of attr parameter of perf_event_open syscall. * Implemented decoding of pkey_alloc, pkey_free, and pkey_mprotect syscalls. * Implemented dumping of mq_timedsend and mq_timedreceive syscalls. * Implemented decoding of PR_SET_FP_MODE and PR_GET_FP_MODE operations of prctl syscall. * Implemented PTRACE_GETREGS API support on m68k. * Updated lists of ARCH_*, BPF_*, BTRFS_*, FALLOC_*, MS_*, *_MAGIC, and V4L2_* constants. * Updated lists of ioctl commands from Linux 4.9. * Added decoding of recently added syscalls on arc, x32, and xtensa. * Enhanced manual page. * Bug fixes * Fixed corner cases in decoding of exit, exit_group, futimesat, getgroups, getresuid, init_module, inotify_init1, kcmp, kexec_load, lookup_dcookie, mq_getsetattr, mq_notify, mq_open, mq_timedreceive, mq_timedsend, name_to_handle_at, prctl, process_vm_readv, process_vm_writev, setfsuid, setgroups, setns, unshare, and utimes syscalls. * Fixed handling of verbose flag in printing of controls array of struct v4l2_ext_controls. * Fixed omission of field names in the output of capability, sigaction, sigevent, statfs, timespec, timeval, and utimbuf structures. * Fixed printing of unknown syscalls in siginfo structure. * Fixed decoding of ioctl constants on m68k. * Fixed cris architecture support. * Fixed cross build when host compiler does not support the same set of warning flags as the cross compiler. * Fixed build on SLE10 and SLE11. Bug: N/A Test: manual Change-Id: I590bf5db1652aa1dfdc0eb16e30fd97c82af2261
/external/strace/futex.c
|
d02a91dd2cce2e3272e4c485884b90ed73fe512a |
|
30-Aug-2016 |
Eugene Syromyatnikov <evgsyr@gmail.com> |
futex: do not pretend <linux/futex.h> is included As configure.ac does not check for linux/futex.h, HAVE_LINUX_FUTEX_H is never defined and therefore the inclusion of <linux/futex.h> guarded by HAVE_LINUX_FUTEX_H makes no sense. Moreover, <linux/futex.h> used to have an incorrect definition of FUTEX_WAIT_BITSET_PRIVATE and FUTEX_WAKE_BITSET_PRIVATE: since kernel commit v2.6.24-6320-gcd68998 where these definitions were initially introduced and up to v2.6.31-7082-gf8d1e54 where they were finally fixed these macros had been incorrectly defined via FUTEX_WAIT_BITS and FUTEX_WAKE_BITS instead of FUTEX_WAIT_BITSET and FUTEX_WAKE_BITSET, and these incorrect definitions made their way into some distributions still in use. * futex.c [HAVE_LINUX_FUTEX_H]: Remove.
/external/strace/futex.c
|
110da33afff6551122c90af35b2c697377e13bb5 |
|
29-Aug-2016 |
Eugene Syromyatnikov <evgsyr@gmail.com> |
futex: avoid printing val when it is not used by the futex command This is analogous to timeout argument omitting in FUTEX_WAKE_BITSET command. * futex.c (SYS_FUNC(futex)): Remove common printing of val argument. Add printing of val argument for all futex commands except FUTEX_LOCK_PI, FUTEX_UNLOCK_PI, and FUTEX_TRYLOCK_PI.
/external/strace/futex.c
|
ebeae24de441c6448ff903d5201f6c80732eae2b |
|
29-Aug-2016 |
Eugene Syromyatnikov <evgsyr@gmail.com> |
futex: fix formatting of unknown command argument Use alternate form for printing hexadecimal numbers to avoid confusion. Use printaddr to print uaddr as the latter is interpreted as a pointer in all currently supported futex operations. * futex.c (SYS_FUNC(futex)): Fix formatting of unknown command argument.
/external/strace/futex.c
|
3e0e10532dd5cdb79c710dd43822bbb5fa162cb9 |
|
29-Aug-2016 |
Eugene Syromyatnikov <evgsyr@gmail.com> |
futex: add handling of FUTEX_FD command Since obsolete FUTEX_FD command is known and used to have some expected argument format, print FUTEX_FD using that format. * futex.c (SYS_FUNC(futex)): Handle FUTEX_FD command.
/external/strace/futex.c
|
a3e1ad344be0518481c82d80948f009246c5134f |
|
29-Aug-2016 |
Eugene Syromyatnikov <evgsyr@gmail.com> |
futex: fix formatting of val3 hexadecimal argument * futex.c (SYS_FUNC(futex)): In FUTEX_WAIT_BITSET and FUTEX_WAKE_BITSET, print hexadecimal val3 argument in alternate form to avoid confusion.
/external/strace/futex.c
|
bfa22a596fc6ae7f706b0d1321210021af8bcbab |
|
29-Aug-2016 |
Eugene Syromyatnikov <evgsyr@gmail.com> |
futex: fix FUTEX_WAKE_OP compare function mask According to the initial and current (v4.7) kernel implementations, in FUTEX_WAKE_OP case the compare function does not have FUTEX_OP_OPARG_SHIFT flag and occupies 4 bits starting with bit 24. * futex.c (SYS_FUNC(futex)): Do not print FUTEX_OP_OPARG_SHIFT for 27th bit of val3 in FUTEX_WAKE_OP case.
/external/strace/futex.c
|
38a34c9349267c99ce1ddbd0b6e985147415d355 |
|
17-Dec-2015 |
Dmitry V. Levin <ldv@altlinux.org> |
Add copyright headers to some files which lack them Before this change, all files that exist since 20th century had copyright headers, while most files that appeared later didn't. This change fixes the inconsistency by adding missing copyright headers. It doesn't mean that copyright headers became maintained. In my view, git history provides much better information on this subject and is much more accurate than copyright headers.
/external/strace/futex.c
|
5938526c818336357b97caa8fd89d58a12987b02 |
|
18-Sep-2015 |
Dmitry V. Levin <ldv@altlinux.org> |
Convert parser of struct timespec to new mpers infrastructure * defs.h (print_timespec): Remove. * print_time.c (print_timespec): New mpers printer. * futex.c (sys_futex): Use print_timespec instead of printtv. * ipc_sem.c (sys_semtimedop): Likewise. * mq.c (sys_mq_timedsend, sys_mq_timedreceive): Likewise. * time.c (clock_settime, clock_gettime, clock_nanosleep): Likewise. (print_timespec): Remove.
/external/strace/futex.c
|
b5821091ee6ae04a4fdc83a5b9fc78cb7557df84 |
|
20-Jul-2015 |
Dmitry V. Levin <ldv@altlinux.org> |
futex.c: enhance futex syscall decoding * futex.c (sys_futex): Use switch statement. Use printaddr. Print uint32_t syscall arguments using %u format. Update for RVAL_DECODED.
/external/strace/futex.c
|
003cc9f66a3b30ab3cf54566a1d9cf626e573a0d |
|
17-Jun-2015 |
Dmitry V. Levin <ldv@altlinux.org> |
futex: move fallback definitions of futex constants to xlat/ * futex.c: Move definitions of FUTEX_OP_CMP_* constants ... * xlat/futexwakecmps.in: ... here. * futex.c: Move definitions of other FUTEX_OP_* constants ... * xlat/futexwakeops.in: ... here. * futex.c: Move definitions of remaining FUTEX_* constants except FUTEX_PRIVATE_FLAG and FUTEX_CLOCK_REALTIME flags ... * xlat/futexops.in: ... here.
/external/strace/futex.c
|
a0bd3749fc6fdf6364c1e269a4c02e8c153eb84b |
|
07-Apr-2015 |
Dmitry V. Levin <ldv@altlinux.org> |
Declare syscall parsers using SYS_FUNC macro Introduce SYS_FUNC macro to declare and define all syscall parsers. * Makefile.am (BUILT_SOURCES, CLEANFILES): Add sys_func.h. (sys_func.h): New rule. * defs.h (SYS_FUNC_NAME, SYS_FUNC): New macros. * linux/syscall.h: Include "sys_func.h". [NEED_UID16_PARSERS]: Use SYS_FUNC to declare uid16 syscall parsers. Remove other declarations. * linux/alpha/syscallent.h (160, 161): Add sys_ prefix to osf_statfs and osf_fstatfs syscall parsers. * *.c: Use SYS_FUNC to define syscall parsers.
/external/strace/futex.c
|
e314f808bfb3d991ef767a3be4793d62e6c9d8e1 |
|
11-Dec-2014 |
Dmitry V. Levin <ldv@altlinux.org> |
process.c: move futex parser to a separate file * futex.c: New file. * Makefile.am (strace_SOURCES): Add it. * process.c: Move sys_futex and related code to futex.c.
/external/strace/futex.c
|