/usr/share/systemtap/tapset/linux/s390
NameSizeModeActions
aux_syscalls.stp55410644editdlrm
syscall_num.stp680680644editdlrm
sysc_compat_fadvise64.stp65840644editdlrm
sysc_compat_fallocate.stp32180644editdlrm
sysc_compat_ftruncate64.stp18260644editdlrm
sysc_compat_lookup_dcookie.stp30970644editdlrm
sysc_compat_readahead.stp19170644editdlrm
sysc_compat_truncate64.stp18790644editdlrm
sysc_execve.stp47760644editdlrm
sysc_getresgid16.stp18200644editdlrm
sysc_getresuid16.stp17010644editdlrm
sysc_ipc.stp14190644editdlrm
sysc_mmap.stp32980644editdlrm
sysc_mmap2.stp31290644editdlrm
sysc_sigaltstack.stp30420644editdlrm
sysc_sysctl32.stp11420644editdlrm
Edit: /usr/share/systemtap/tapset/linux/s390/sysc_sigaltstack.stp (3042B)
%( CONFIG_GENERIC_SIGALTSTACK == "n" || kernel_v < "3.8" %? # sigaltstack ________________________________________________ # asmlinkage long # sys_sigaltstack(const stack_t __user * uss, stack_t __user *uoss) # # NOTE: args vary between archs. @define _SYSCALL_SIGALTSTACK_NAME %( name = "sigaltstack" %) @define _SYSCALL_SIGALTSTACK_ARGSTR %( argstr = sprintf("%s, %p", uss_str, uoss_uaddr) %) probe syscall.sigaltstack = dw_syscall.sigaltstack !, nd_syscall.sigaltstack {} probe syscall.sigaltstack.return = dw_syscall.sigaltstack.return !, nd_syscall.sigaltstack.return {} # dw_sigaltstack _____________________________________________________ probe dw_syscall.sigaltstack = kernel.function("sys_sigaltstack") { @_SYSCALL_SIGALTSTACK_NAME uss_uaddr = $uss uss_str = _stp_sigaltstack_u(uss_uaddr) uoss_uaddr = $uoss %(systemtap_v < "2.3" %? regs = %{ /* pure */ _stp_current_pt_regs() %} %) @_SYSCALL_SIGALTSTACK_ARGSTR } probe dw_syscall.sigaltstack.return = kernel.function("sys_sigaltstack").return { @_SYSCALL_SIGALTSTACK_NAME @SYSC_RETVALSTR($return) } # nd_sigaltstack _____________________________________________________ probe nd_syscall.sigaltstack = kprobe.function("sys_sigaltstack") { @_SYSCALL_SIGALTSTACK_NAME asmlinkage() uss_uaddr = pointer_arg(1) uss_str = _stp_sigaltstack_u(uss_uaddr) uoss_uaddr = pointer_arg(2) %(systemtap_v < "2.3" %? regs = %{ /* pure */ _stp_current_pt_regs() %} %) @_SYSCALL_SIGALTSTACK_ARGSTR } probe nd_syscall.sigaltstack.return = kprobe.function("sys_sigaltstack").return { @_SYSCALL_SIGALTSTACK_NAME @SYSC_RETVALSTR(returnval()) } # sys32_sigaltstack ________________________________________________ # asmlinkage long # sys32_sigaltstack(const stack_t32 __user *uss, stack_t32 __user *uoss) # # NOTE: args vary between archs. probe syscall.sys32_sigaltstack = dw_syscall.sys32_sigaltstack !, nd_syscall.sys32_sigaltstack ? {} probe syscall.sys32_sigaltstack.return = dw_syscall.sys32_sigaltstack.return !, nd_syscall.sys32_sigaltstack.return ? {} # dw_sys32_sigaltstack _____________________________________________________ probe dw_syscall.sys32_sigaltstack = kernel.function("sys32_sigaltstack") ? { @_SYSCALL_SIGALTSTACK_NAME uss_uaddr = $uss uss_str = _stp_compat_sigaltstack_u(uss_uaddr) uoss_uaddr = $uoss @_SYSCALL_SIGALTSTACK_ARGSTR } probe dw_syscall.sys32_sigaltstack.return = kernel.function("sys32_sigaltstack").return ? { @_SYSCALL_SIGALTSTACK_NAME @SYSC_RETVALSTR($return) } # nd_sys32_sigaltstack _____________________________________________________ probe nd_syscall.sys32_sigaltstack = kprobe.function("sys32_sigaltstack") ? { @_SYSCALL_SIGALTSTACK_NAME asmlinkage() uss_uaddr = pointer_arg(1) uss_str = _stp_compat_sigaltstack_u(uss_uaddr) uoss_uaddr = pointer_arg(2) @_SYSCALL_SIGALTSTACK_ARGSTR } probe nd_syscall.sys32_sigaltstack.return = kprobe.function("sys32_sigaltstack").return ? { @_SYSCALL_SIGALTSTACK_NAME @SYSC_RETVALSTR(returnval()) } %)