This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
Re: [patch] support syscall.sigaltstack for all archs
Hi, all
I did not commit the patch, because I just found that do_sigaltstack is
used by other functions besides sys_sigaltstack.
But in current tapset, syscall.sigaltstack is not supported for IA64, so
I made a new patch for syscall.sigaltstack just support IA64.
Lai Jiangshan wrote:
I have tested it on i686(Fedora7) and ia64(rhel5). It's ok
on these two hosts! I will commit it.
--- /usr/share/systemtap/tapset/ia64/syscalls.stp 2007-09-11 03:18:51.000000000 +0900
+++ tapset/ia64/syscalls.stp 2007-09-12 00:41:37.000000000 +0900
@@ -41,6 +41,25 @@
retstr = returnstr(2)
}
+# sigaltstack _______________________________________________
+# asmlinkage long
+# sys_sigaltstack (const stack_t __user *uss, stack_t __user *uoss, long arg2,
+# long arg3, long arg4, long arg5, long arg6, long arg7,
+# struct pt_regs regs)
+#
+probe syscall.sigaltstack = kernel.function("sys_sigaltstack")
+{
+ name = "sigaltstack";
+ ss_uaddr = $uss
+ oss_uaddr = $uoss
+ argstr = sprintf("%p, %p", $uss, $uoss)
+}
+probe syscall.sigaltstack.return = kernel.function("sys_sigaltstack").return
+{
+ name = "sigaltstack";
+ retstr = returnstr(1)
+}
+
# sysctl _____________________________________________________
#
# long sys32_sysctl (struct sysctl32 __user *args)