]> sourceware.org Git - systemtap.git/commitdiff
PR20333/umask
authorMartin Cermak <mcermak@redhat.com>
Tue, 3 Jan 2017 12:43:00 +0000 (13:43 +0100)
committerMartin Cermak <mcermak@redhat.com>
Tue, 3 Jan 2017 12:43:00 +0000 (13:43 +0100)
tapset/linux/nd_syscalls2.stp
tapset/linux/sysc_umask.stp [new file with mode: 0644]
tapset/linux/syscalls2.stp

index 8441c5ff0107671e988e4b31e9cc05df97a7ba48..89beaa9c1b7d18bbbf87fd96fd3dd0265216d5e9 100644 (file)
@@ -1,20 +1,4 @@
 
-# umask ______________________________________________________
-# long sys_umask(int mask)
-#
-probe nd_syscall.umask = kprobe.function("sys_umask") ?
-{
-       name = "umask"
-       asmlinkage()
-       mask = uint_arg(1)
-       argstr = sprintf("%#o", mask)
-}
-probe nd_syscall.umask.return = kprobe.function("sys_umask").return ?
-{
-       name = "umask"
-       retstr = returnstr(3)
-}
-
 # umount _____________________________________________________
 # long sys_umount(char __user * name, int flags)
 # SYSCALL_DEFINE1(oldumount, char __user *, name)
diff --git a/tapset/linux/sysc_umask.stp b/tapset/linux/sysc_umask.stp
new file mode 100644 (file)
index 0000000..a746ab6
--- /dev/null
@@ -0,0 +1,45 @@
+# umask ______________________________________________________
+# long sys_umask(int mask)
+#
+
+@define _SYSCALL_UMASK_NAME
+%(
+       name = "umask"
+%)
+
+@define _SYSCALL_UMASK_ARGSTR
+%(
+       argstr = sprintf("%#o", mask)
+%)
+
+probe syscall.umask = dw_syscall.umask !, nd_syscall.umask {}
+probe syscall.umask.return = dw_syscall.umask.return !, nd_syscall.umask.return {}
+
+# dw_umask _____________________________________________________
+
+probe dw_syscall.umask = kernel.function("sys_umask").call
+{
+       @_SYSCALL_UMASK_NAME
+       mask = __uint32($mask)
+       @_SYSCALL_UMASK_ARGSTR
+}
+probe dw_syscall.umask.return = kernel.function("sys_umask").return
+{
+       @_SYSCALL_UMASK_NAME
+       retstr = return_str(3, $return)
+}
+
+# nd_umask _____________________________________________________
+
+probe nd_syscall.umask = kprobe.function("sys_umask") ?
+{
+       @_SYSCALL_UMASK_NAME
+       asmlinkage()
+       mask = uint_arg(1)
+       @_SYSCALL_UMASK_ARGSTR
+}
+probe nd_syscall.umask.return = kprobe.function("sys_umask").return ?
+{
+       @_SYSCALL_UMASK_NAME
+       retstr = returnstr(3)
+}
index ed378549ea5229b9dd31a5acb23f7013fe8678c3..5d01a094220c11ad2484e47ec88052dbf530c34e 100644 (file)
@@ -1,19 +1,4 @@
 
-# umask ______________________________________________________
-# long sys_umask(int mask)
-#
-probe syscall.umask = kernel.function("sys_umask").call
-{
-       name = "umask"
-       mask = __uint32($mask)
-       argstr = sprintf("%#o", __uint32($mask))
-}
-probe syscall.umask.return = kernel.function("sys_umask").return
-{
-       name = "umask"
-       retstr = return_str(3, $return)
-}
-
 # umount _____________________________________________________
 # long sys_umount(char __user * name, int flags)
 # SYSCALL_DEFINE1(oldumount, char __user *, name)
This page took 0.033464 seconds and 5 git commands to generate.