ed84a97da5
linux/*/syscallent*.h part is updated automatically by: sed -i '/TSFA\|stat[iu]s/! s/,[[:space:]]\?\([[:space:]]*SEN(.*stat\)/|TSTA,\1/' \ linux/*/syscallent*.h * sysent.h (TRACE_STAT_LIKE): New macro. * syscall.c: Alias TSTA to TRACE_STAT_LIKE around syscallent.h inclusion. * qualify.c (lookup_class): Add TRACE_STAT_LIKE for "%%stat". * strace.1 (.SS Filtering): Add information about %%stat syscall class. * NEWS: Mention this change. * linux/32/syscallent.h (fstat64, fstatat64, statx): Add TSTA flag. * linux/64/syscallent.h (fstat, newfstatat, statx): Likewise. * linux/aarch64/syscallent.h (fstat, lstat, newfstatat, stat): Likewise. * linux/alpha/syscallent.h (fstat, fstat64, fstatat64, lstat, lstat64, osf_fstat, osf_lstat, osf_old_fstat, osf_old_lstat, osf_old_stat, osf_stat, stat, stat64): Likewise. * linux/arm/syscallent.h (fstat, fstat64, fstatat64, lstat, lstat64, oldfstat, oldlstat, oldstat, stat, stat64, statx): Likewise. * linux/avr32/syscallent.h (fstat, fstat64, fstatat64, lstat, lstat64, stat, stat64): Likewise. * linux/bfin/syscallent.h (fstat, fstat64, fstatat64, lstat, lstat64, oldfstat, oldlstat, oldstat, stat, stat64): Likewise. * linux/crisv10/syscallent.h (fstat, fstat64, fstatat64, lstat, lstat64, oldfstat, oldlstat, oldstat, stat, stat64): Likewise. * linux/hppa/syscallent.h (fstat, fstat64, fstatat64, lstat, lstat64, stat, stat64): Likewise. * linux/i386/syscallent.h (fstat, fstat64, fstatat64, lstat, lstat64, oldfstat, oldlstat, oldstat, stat, stat64, statx): Likewise. * linux/ia64/syscallent.h (fstat, lstat, newfstatat, stat): Likewise. * linux/m68k/syscallent.h (fstat, fstat64, fstatat64, lstat, lstat64, oldfstat, oldlstat, oldstat, stat, stat64, statx): Likewise. * linux/microblaze/syscallent.h (fstat, fstat64, fstatat64, lstat, lstat64, oldfstat, oldlstat, oldstat, stat, stat64): Likewise. * linux/mips/syscallent-compat.h (bsd43_fstat, bsd43_lstat, bsd43_oldfstat, bsd43_oldstat, bsd43_stat, posix_fstat, posix_lstat, posix_stat, svr4_fstat, svr4_fxstat, svr4_lstat, svr4_lxstat, svr4_stat, svr4_xstat, sysv_fstat, sysv_fxstat, sysv_lstat, sysv_lxstat, sysv_stat, sysv_xstat): Likewise. * linux/mips/syscallent-n32.h (fstat, lstat, newfstatat, stat, statx): Likewise. * linux/mips/syscallent-n64.h (fstat, lstat, newfstatat, stat, statx): Likewise. * linux/mips/syscallent-o32.h (fstat, fstat64, fstatat64, lstat, lstat64, oldfstat, oldlstat, oldstat, stat, stat64, statx): Likewise. * linux/powerpc64/syscallent.h (fstat, lstat, newfstatat, oldfstat, oldlstat, oldstat, stat): Likewise. * linux/powerpc/syscallent.h (fstat, fstat64, fstatat64, lstat, lstat64, oldfstat, oldlstat, oldstat, stat, stat64, statx): Likewise. * linux/s390/syscallent.h (fstat, fstat64, fstatat64, lstat, lstat64, stat, stat64, statx): Likewise. * linux/s390x/syscallent.h (fstat, lstat, newfstatat, stat, statx): Likewise. * linux/sh64/syscallent.h (fstat, fstat64, fstatat64, lstat, lstat64, oldfstat, oldlstat, oldstat, stat, stat64): Likewise. * linux/sh/syscallent.h (fstat, fstat64, fstatat64, lstat, lstat64, oldfstat, oldlstat, oldstat, stat, stat64): Likewise. * linux/sparc64/syscallent.h (fstat, fstat64, fstatat64, lstat, lstat64, oldlstat, stat, stat64): Likewise. * linux/sparc/syscallent.h (fstat, fstat64, fstatat64, lstat, lstat64, oldlstat, stat, stat64): Likewise. * linux/x32/syscallent.h (fstat, lstat, newfstatat, stat, statx): Likewise. * linux/x86_64/syscallent.h (fstat, lstat, newfstatat, stat, statx): Likewise. * linux/xtensa/syscallent.h (fstat, fstat64, fstatat64, lstat, lstat64, stat, stat64, statx): Likewise. * tests/gen_tests.in (trace_stat_like): New entry. * tests/trace_stat_like.in: New file. * tests/Makefile.am (EXTRA_DIST): Add it. * tests/ksysent.c (TSTA): New macro, defined to 0. * tests/nsyscalls.c: Likewise.
30 lines
1.4 KiB
C
30 lines
1.4 KiB
C
#ifndef STRACE_SYSENT_H
|
|
#define STRACE_SYSENT_H
|
|
|
|
typedef struct sysent {
|
|
unsigned nargs;
|
|
int sys_flags;
|
|
int sen;
|
|
int (*sys_func)();
|
|
const char *sys_name;
|
|
} struct_sysent;
|
|
|
|
#define TRACE_FILE 00000001 /* Trace file-related syscalls. */
|
|
#define TRACE_IPC 00000002 /* Trace IPC-related syscalls. */
|
|
#define TRACE_NETWORK 00000004 /* Trace network-related syscalls. */
|
|
#define TRACE_PROCESS 00000010 /* Trace process-related syscalls. */
|
|
#define TRACE_SIGNAL 00000020 /* Trace signal-related syscalls. */
|
|
#define TRACE_DESC 00000040 /* Trace file descriptor-related syscalls. */
|
|
#define TRACE_MEMORY 00000100 /* Trace memory mapping-related syscalls. */
|
|
#define SYSCALL_NEVER_FAILS 00000200 /* Syscall is always successful. */
|
|
#define STACKTRACE_INVALIDATE_CACHE 00000400 /* Trigger proc/maps cache updating */
|
|
#define STACKTRACE_CAPTURE_ON_ENTER 00001000 /* Capture stacktrace on "entering" stage */
|
|
#define TRACE_INDIRECT_SUBCALL 00002000 /* Syscall is an indirect socket/ipc subcall. */
|
|
#define COMPAT_SYSCALL_TYPES 00004000 /* A compat syscall that uses compat types. */
|
|
#define TRACE_STATFS 00040000 /* Trace statfs, statfs64, and statvfs syscalls. */
|
|
#define TRACE_FSTATFS 00100000 /* Trace fstatfs, fstatfs64 and fstatvfs syscalls. */
|
|
#define TRACE_STATFS_LIKE 00200000 /* Trace statfs-like, fstatfs-like and ustat syscalls. */
|
|
#define TRACE_STAT_LIKE 01000000 /* Trace *{,l,f}stat{,x,at}{,64} syscalls. */
|
|
|
|
#endif /* !STRACE_SYSENT_H */
|