| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
* tapset/aux_syscalls.stp (_inotify_watch_mask_str): New helper function.
(_inotify_init1_flag_str): Likewise.
* tapset/syscalls.stp (inotify_add_watch): Stringify watch mask.
(syscall.inotify_init[.return]): Add inotify_init1() support.
* testsuite/systemtap.syscall/inotify.c: New test.
|
|
|
|
|
|
|
| |
* tapset/aux_syscalls.stp (_eventfd2_flag_str): New utility function.
* tapset/syscalls.stp (syscall.eventfd[.return]): Add alternatives to
handle eventfd2.
* testsuite/systemtap.syscall/eventfd.c: New test.
|
|
|
|
|
|
| |
* tapset/aux_syscalls.stp (_dup3_flag_str): New helper function.
* tapset/syscalls.stp (syscall.dup2): Add alternatives to handle dup3 also.
* testsuite/systemtap.syscall/dup.c: New testcase.
|
|
|
|
|
|
| |
* tapset/aux_syscalls.stp (_epoll_create1_flag_str): New helper function.
* tapset/syscalls.stp (syscall.epoll_create[.return]): Match epoll_creat1
if available.
|
|
|
|
|
|
|
|
|
|
| |
* tapset/syscalls.stp: Used '@defined()' to remove kernel version checks.
* tapset/syscalls2.stp: Ditto.
* tapset/x86_64/syscalls.stp: Ditto.
* tapset/nd_syscalls.stp: Updated to match tapset/syscalls.stp.
* tapset/nd_syscalls2.stp: Updated to match tapset/syscalls2.stp.
* tapset/x86_64/nd_syscalls.stp: Updated to match
tapset/x86_64/syscalls.stp.
|
|
|
|
|
|
|
| |
* tapset/nd_syscalls.stp: Implement ppc32 variant of __is_user_regs.
* tapset/syscalls.stp: Ditto.
Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
|
|
|
|
|
|
|
|
|
|
| |
* tapset/aux_syscalls.stp(_sock_type_str): Rewrote in embedded-C and added
socket flags support.
(_sock_flags_str): New function.
* tapset/syscalls.stp: syscall.accept prefers to use sys_accept4 when it
exists. Added support for sys_accept4's 'flag' parameter.
* testsuite/systemtap.syscall/net1.c (main): Updated regular expression to
handle the new 'flags' argument.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Inline functions do not have an indentifiable return point and require
kernel built using VTA-enabled gcc to get tracking of variables. OTOH
syscall functions are very rarely inlined (depending on the compiler
mood), therefore filtering probes to include only non-inlined functions
ensures consistent behavior between different kernels.
This removes the problem of inaccessible variables in inlined syscalls
that is described in comments #6-9 to PR5890 and gives us the status quo
w.r.t. syscall probing, because before the commit solving PR10572
(b7478964) inline instances were masked anyway by non-inline ones.
You can check whether you have inlined syscalls using following command:
$ stap -l 'kernel.function("sys_*"),kernel.function("compat_sys_*")' \
2>&1 -vvv | awk '/^selected inline/{print $5}'
* tapset/syscalls.stp: Add .call to all entry probes.
* tapset/syscalls2.stp: Ditto.
|
|
|
|
|
|
| |
The "/* pure */" tag has no effect unless it is within the embedded-C
body of a function. In this instance, they were accidentally moved out
during the syscall cleanups.
|
|
|
|
|
|
|
| |
Align probe points in probe aliases to equal sign using spaces as it's
already done in nd_syscalls.stp.
Signed-off-by: Josh Stone <jistone@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rules:
- Specify probe points for aliases starting from the alias declaration
line and with one probe point per line.
- Use K&R indent style -- probe alias/point/function opening brace goes
to the line following the declaration, other opening braces are kept
on the same line as the control statements.
- Indent using tabs.
- Surround operators with spaces.
- Put spaces after commas.
- Avoid trailing whitespaces.
Signed-off-by: Josh Stone <jistone@redhat.com>
|
|
|
|
|
|
|
| |
Rename variables accordingly to argument names used in man pages in
syscall.(faccess|fchmod|fchown|link|mknod)at probe points.
Signed-off-by: Josh Stone <jistone@redhat.com>
|
|
|
|
| |
* tapset/syscalls.stp: Rename abs_timout_uaddr to abs_timeout_uaddr.
|
|
|
|
| |
* tapset/syscalls.stp: Rename fs variable to fd.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
PR5554
* syscalls.stp (__is_user_regs): Modify to work with older kernels.
|
|
|
|
|
|
|
| |
PR5554
* syscalls.stp (__is_user_regs): Add new function to check whether
pt_regs is user mode registers.
(syscall.fork): Use __is_user_regs() to decide syscall name.
|
|
|
|
|
|
|
| |
* syscalls.stp (get_mempolicy): Fix syntax. Add prototype.
(kexec_load): Ditto.
(mbind): Ditto.
(move_pages): Ditto.
|
|
|
|
|
| |
From Bai Weidong <baiwd@cn.fujitsu.com>
* syscalls.stp: Add missed compat* probes in syscalls.stp.
|
|
|
|
|
|
|
|
| |
From Lai Jiangshan <laijs@cn.fujitsu.com>
* syscall.stp (syscall.brk): Add probe point
kernel.function("ia64_brk")
* syscall.stp (syscall.mremap): Add probe point
kernel.function("ia64_mremap")
|
|
|
|
|
|
| |
* syscalls.stp (adjtimex.return): Improve retstr.
* aux_syscalls.stp: Add a function(_adjtimex_return_str) for
adjtimex.return.
|
|
|
|
|
|
|
|
|
|
|
| |
From Lai Jiangshan <laijs@cn.fujitsu.com>
* aux_syscalls.stp (_sys_open_flag_str): Fix bug that missing
"O_ASYNC".
From Lai Jiangshan <laijs@cn.fujitsu.com>
* aux_syscalls.stp: Add a function _mremap_flags.
* syscalls.stp (syscall.mremap): Use _mremap_flags instead of
_mmap_flags.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 2295
* syscalls.stp (sys_bdflush): Make optional.
(sys_madvise): Ditto.
(sys_mincore): Ditto.
(sys_mlock): Ditto.
(sys_mlockall): Ditto.
(sys_mprotect): Ditto.
(sys_mremap): Ditto.
(sys_msync): Ditto.
(sys_munlock): Ditto.
(sys_munlockall): Ditto.
* syscalls2.stp (sys_remap_pages): Make optional.
* ppc64/syscalls.stp (ppc_rtas): Make optional.
|
|
|
|
|
| |
* syscall.stp(getrusage) Fix the output of getrusage's argstr
when who is set to -2.
|
|
|
|
|
|
| |
* syscalls.stp (bdflush): Add comma between args in argstr.
Set second parameter(data)'s type by first parameter(func)'s
value in argstr.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* ppc64/syscalls.stp: Remove a bunch of
non-ppc64 specific probes.
* syscalls.stp (compat_sys_epoll_ctl): New.
(compat_sys_epoll_wait): New.
(sys_epoll_pwait): New.
(compat_sys_epoll_pwait): New.
(compat_sys_keyctl): New.
(compat_sys_mq_open): New.
(compat_sys_futex): New.
(compat_sys_mq_timedsend): New.
(compat_sys_mq_timedreceive): New.
(compat_sys_mq_notify): New.
(compat_sys_mq_getsetattr): New.
(init_module): Make optional and quote args.
(sys_eventfd): New.
* syscalls2.stp (sys_splice): New.
(sys_vmsplice): New.
(compat_sys_vmsplice): New.
(sys_tee): New.
(sys_signalfd): New.
(compat_sys_signalfd): New.
(sys_timerfd): New.
(compat_sys_timerfd): New.
(old32_readdir): New.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* aux_syscalls.stp (_utimensat_flag_str): New.
(_dfd_str): New.
(_struct_timeval2_u): Deleted.
(_struct_timeval_u): Take a number of structs to decode.
(_struct_compat_timeval2_u): Deleted
(_struct_compat_timeval_u): Take a number of structs to decode.
(_struct_timespec_u): Take a number of structs to decode.
Recognize UTIME_NOW and UTIME_OMIT.
(_struct_compat_timespec_u): Ditto.
* syscalls.stp (compat_sys_old_getrlimit): Removed.
(sys_migrate_pages): New.
(sys_move_pages): New.
* syscalls2.stp (compat_sys_sigprocmask): Removed. Calls
sys_sigprocmask.
(compat_sys_sysinfo): New.
(compat_sys_rt_sigtimedwait): New.
(sys_utimensat, compat_sys_utimensat): New.
* ppc64/syscalls.stp (compat_sys_sigpending): Removed.
Calls sys_ func.
(compat_sys_setrlimit): Ditto.
(compat_sys_getrlimit): Ditto.
(compat_sys_old_getrlimit): Ditto.
(compat_sys_getrusage): Ditto.
(compat_sys_wait4): Ditto.
(compat_sys_sched_setaffinity): Ditto.
(compat_sys_sched_getaffinity): Ditto.
|
|
|
|
|
|
| |
From Cai Fei <caifei@cn.fujitsu.com>:
* syscalls2.stp, syscalls.stp: Added several missing argstr/retstr
variables.
|
|
|
|
|
| |
From Lai Jiangshan <laijs@cn.fujitsu.com>
* syscalls.stp (creat): Fix argstr.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* aux_syscalls.stp (__get_argv): Add parameter to
optionally skip the first argv (argv[0]).
(__get_compat_argv): Ditto.
* syscalls.stp (execve): Set args to the whole argv.
For argstr use filename plus argv starting at [1].
(compat_execve): Ditto.
* ppc64/syscalls.stp (sys32_exevve): Ditto.
From Cai Fei <caifei@cn.fujitsu.com>
* syscalls.stp (sts_getpgid): Add pid arg.
|
|
|
|
|
|
|
|
|
| |
* x86_64/syscalls.stp: Add support for sys32_mmap[2],
sys32_vm86_warning, and sys32_pipe.
* s390x/syscalls.stp (get_mmap_args): Move to aux_syscalls.
* aux_syscalls.stp (get_mmap_args): Moved here.
* syscalls.stp: Add sys32_alarm.
* syscalls2.stp: Add sys32_uname.
|
|
|
|
|
| |
From "Zhaolei" zhaolei@cn.fujitsu.com:
* syscalls.stp (msync.return): Correct name variable.
|
|
|
|
|
|
|
|
|
| |
* tapset/syscalls.stp (syscall.compat_execve,
syscall.compat_execve.return):
* tapset/syscalls2.stp (syscall.compat_sys_semtimedop,
syscall.compat_sys_semtimedop.return):
* tapset/i686/syscalls.stp (syscall.set_zone_reclaim,
syscall.set_zone_reclaim.return): Make optional.
|
|
|
|
|
|
| |
* syscalls.stp (clack_nanosleep): Fix flags string.
* syscalls2.stp: Fix typo.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* */syscalls.stp: Added mmap functions.
Continued moving common compatibility functions to
the main tapset.
* aux_syscalls.stp (_shmat_flags_str): New.
(__get_compat_argv): New.
* syscalls.stp (adjtimex): Just print hex argument.
(compat_adjtimex): New.
(clock_getres): Also probe compat_clock_getres.
(clock_gettime): Also probe compat funcs.
(compat_clock_nanosleep): New.
(compat_execve): New.
(fstatat): New.
(get[e][gu]id): Also probe sys32.
(getsockopt): Make optional. Also probe compat.
(mmap, mmap2): These are arch-specific, so move to individual
architecture subdirs.
(compat_sys_msgctl): New.
(compat_sys_msgrcv): New.
(compat_sys_msgsnd): New.
* syscalls.stp (pread32): Remove. It calls pread64 .
(quotactl): Make optional.
(recv): Probe correct function.
(recvfrom): Fix args.
(compat_sys_recvmsg): New.
(semctl): Make optional.
(compat_sys_semctl): New.
(semget): Make optional.
(semop): Make optional.
(semtimedop): Make optional.
(compat_sys_semtimedop): New.
(send): Make optional.
(sendmsg): Make optional.
(compat_sys_sendmsg): New.
(sendto): Make optional.
(setsockopt): Make optional. Add compat.
(shmat): New.
(compat_sys_shmat): New.
(shmctl): New.
(compat_sys_shmctl): New.
(shmdt): New.
(shmget): New.
(shutdown): Make optional.
(socket): Make optional.
(socketpair): Make optional.
(swapoff): Make optional.
(swapon): Make optional.
(sysctl): Add probe on sys32.
|
|
|
|
| |
(compat_sys_io_submit): Fix typo.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* syscalls.stp (compat_sys_fcntl64, compat_sys_fcntl): Add.
(compat_sys_fstatfs64): Add.
(compat_sys_getdents, compat_sys_getdents64): Add.
(compat_sys_ioctl): Add.
(compat_sys_io_getevents): Add.
(compat_sys_io_setup): Add.
(compat_sys_io_submit): Add.
* syscalls2.stp (compat_sys_nfsservctl): Add.
(sys_openat): Add.
(sys_ppoll): Add;
(compat_sys_ppoll): Add.
(sys32_pread64): Add.
(sys32_pwrite32): Add.
(sys_pwrite64): Print quoted string.
(sys_pselect6, compat_sys_pselect6): Add.
(sys_pselect7, compat_sys_pselect7): Add.
(compat_sys_old_readdir): Add.
(sys_select): Don't try to print fd_sets.
(compat_sys_select): Add.
(compat_sys_statfs64): Add.
* ppc/syscalls.stp: Remove duplicated probes.
* aux_syscalls.stp (_nfsctl_cmd_str): New.
(_fd_set_u): Removed. Not used.
|
|
|
|
|
|
|
|
| |
* syscall*.stp: Major reorganization work.
* aux_syscalls.stp (_sigprocmask_how_str): Rewrite
in C so real arch-dependent header files
will be used.
(_mlockall_flags_str): Ditto.
|
|
|
|
| |
* syscalls.stp (compat_sys_futimesat): Fix arg.
|
|
|
|
|
|
|
| |
* syscalls.stp: Add sys_futimesat, compat_sys_futimesat.
* syscalls2.stp (utimes): Use _struct_timeval2_u.
* aux_syscalls.stp (_struct_timeval2_u): New function.
(_struct_compat_timeval2_u): New function.
|