]> sourceware.org Git - systemtap.git/commitdiff
PR20333/sigaction32
authorMartin Cermak <mcermak@redhat.com>
Tue, 3 Jan 2017 08:40:38 +0000 (09:40 +0100)
committerMartin Cermak <mcermak@redhat.com>
Tue, 3 Jan 2017 08:40:38 +0000 (09:40 +0100)
tapset/linux/nd_syscalls2.stp
tapset/linux/sysc_sigaction32.stp [new file with mode: 0644]
tapset/linux/syscalls2.stp

index fe4065d48582d5413048acb18d6d5440e2ca94e1..e2987825028f0a42a5d4af1a27b9376682d9d578 100644 (file)
@@ -1,19 +1,3 @@
-probe nd_syscall.sigaction32 = kprobe.function("sys32_sigaction") ?,
-                               kprobe.function("compat_sys_sigaction") ?
-{
-       name = "sigaction"
-       asmlinkage()
-       sig = int_arg(1)
-       act_uaddr = pointer_arg(2)
-       oact_uaddr = pointer_arg(3)
-       argstr = sprintf("%s, {%s}, %p", _signal_name(sig), _struct_old_sigaction32_u(act_uaddr), oact_uaddr)
-}
-probe nd_syscall.sigaction32.return = kprobe.function("sys32_sigaction").return ?,
-                                      kprobe.function("compat_sys_sigaction").return ?
-{
-       name = "sigaction"
-       retstr = returnstr(1)
-}
 
 # In kernel 3.8, CONFIG_GENERIC_SIGALTSTACK was added by 
 # kernel commit 6bf9adfc90370b695cb111116e15fdc0e1906270.
diff --git a/tapset/linux/sysc_sigaction32.stp b/tapset/linux/sysc_sigaction32.stp
new file mode 100644 (file)
index 0000000..6968589
--- /dev/null
@@ -0,0 +1,56 @@
+# sigaction _________________________________________________________
+
+@define _SYSCALL_SIGACTION32_NAME
+%(
+       name = "sigaction"
+%)
+
+@define _SYSCALL_SIGACTION32_ARGSTR
+%(
+       argstr = sprintf("%s, {%s}, %p", sig_str, act_str, oact_uaddr)
+%)
+
+probe syscall.sigaction32 = dw_syscall.sigaction32 !, nd_syscall.sigaction32 {}
+probe syscall.sigaction32.return = dw_syscall.sigaction32.return !,
+                                   nd_syscall.sigaction32.return {}
+
+# dw_sigaction32 _____________________________________________________
+
+probe dw_syscall.sigaction32 = kernel.function("sys32_sigaction").call ?,
+                           kernel.function("compat_sys_sigaction").call ?
+{
+       @_SYSCALL_SIGACTION32_NAME
+       sig = __int32($sig)
+       sig_str = _signal_name(sig)
+       act_uaddr = @__pointer($act)
+       act_str = _struct_old_sigaction32_u(act_uaddr)
+       oact_uaddr = $oact
+       @_SYSCALL_SIGACTION32_ARGSTR
+}
+probe dw_syscall.sigaction32.return = kernel.function("sys32_sigaction").return ?,
+                                  kernel.function("compat_sys_sigaction").return ?
+{
+       @_SYSCALL_SIGACTION32_NAME
+       retstr = return_str(1, $return)
+}
+
+# nd_sigaction32 _____________________________________________________
+
+probe nd_syscall.sigaction32 = kprobe.function("sys32_sigaction") ?,
+                               kprobe.function("compat_sys_sigaction") ?
+{
+       @_SYSCALL_SIGACTION32_NAME
+       asmlinkage()
+       sig = int_arg(1)
+       sig_str = _signal_name(sig)
+       act_uaddr = pointer_arg(2)
+       act_str = _struct_old_sigaction32_u(act_uaddr)
+       oact_uaddr = pointer_arg(3)
+       @_SYSCALL_SIGACTION32_ARGSTR
+}
+probe nd_syscall.sigaction32.return = kprobe.function("sys32_sigaction").return ?,
+                                      kprobe.function("compat_sys_sigaction").return ?
+{
+       @_SYSCALL_SIGACTION32_NAME
+       retstr = returnstr(1)
+}
index f60d089cb8f578a3299310862efc172ead7a075c..8957eb1f7ceaf18297b39058a4fe8dfacc4df132 100644 (file)
@@ -1,19 +1,3 @@
-probe syscall.sigaction32 = kernel.function("sys32_sigaction").call ?,
-                           kernel.function("compat_sys_sigaction").call ?
-{
-       name = "sigaction"
-       sig = __int32($sig)
-       act_uaddr = @__pointer($act)
-       oact_uaddr = $oact
-       argstr = sprintf("%s, {%s}, %p", _signal_name(sig),
-                        _struct_old_sigaction32_u(act_uaddr), oact_uaddr)
-}
-probe syscall.sigaction32.return = kernel.function("sys32_sigaction").return ?,
-                                  kernel.function("compat_sys_sigaction").return ?
-{
-       name = "sigaction"
-       retstr = return_str(1, $return)
-}
 
 # In kernel 3.8, CONFIG_GENERIC_SIGALTSTACK was added by 
 # kernel commit 6bf9adfc90370b695cb111116e15fdc0e1906270.
This page took 0.029992 seconds and 5 git commands to generate.