]> sourceware.org Git - systemtap.git/commitdiff
PR20333/io_submit
authorMartin Cermak <mcermak@redhat.com>
Fri, 23 Dec 2016 16:23:11 +0000 (17:23 +0100)
committerMartin Cermak <mcermak@redhat.com>
Fri, 23 Dec 2016 16:23:11 +0000 (17:23 +0100)
tapset/linux/nd_syscalls.stp
tapset/linux/sysc_io_submit.stp [new file with mode: 0644]
tapset/linux/syscalls.stp

index 0cd8632bd1324471de7618643d746252ecd44065..b0649b97e8e4638d29e2e174b5b9f7022a3a85f7 100644 (file)
@@ -1,33 +1,4 @@
 
-# io_submit __________________________________________________
-# long sys_io_submit(aio_context_t ctx_id, long nr, struct iocb __user * __user *iocbpp)
-# long compat_sys_io_submit(aio_context_t ctx_id, int nr, u32 __user *iocb)
-#
-probe nd_syscall.io_submit = __nd_syscall.io_submit,
-       kprobe.function("compat_sys_io_submit") ?
-{
-       name = "io_submit"
-       asmlinkage()
-       ctx_id = ulong_arg(1)
-       nr = long_arg(2)
-       iocbpp_uaddr = pointer_arg(3)
-       argstr = sprintf("%u, %d, %p", ctx_id, nr, iocbpp_uaddr)
-}
-probe __nd_syscall.io_submit = kprobe.function("sys_io_submit") ?
-{
-       @__syscall_gate(@const("__NR_io_submit"))
-}
-probe nd_syscall.io_submit.return = __nd_syscall.io_submit.return,
-       kprobe.function("compat_sys_io_submit").return ?
-{
-       name = "io_submit"
-       retstr = returnstr(1)
-}
-probe __nd_syscall.io_submit.return = kprobe.function("sys_io_submit").return ?
-{
-       @__syscall_gate(@const("__NR_io_submit"))
-}
-
 # ioprio_get _________________________________________________
 # long sys_ioprio_get(int which, int who)
 #
diff --git a/tapset/linux/sysc_io_submit.stp b/tapset/linux/sysc_io_submit.stp
new file mode 100644 (file)
index 0000000..881c3f6
--- /dev/null
@@ -0,0 +1,70 @@
+# io_submit __________________________________________________
+# long compat_sys_io_submit(aio_context_t ctx_id, int nr, u32 __user *iocb)
+# long sys_io_submit(aio_context_t ctx_id, long nr, struct iocb __user * __user *iocbpp)
+#
+
+@define _SYSCALL_IO_SUBMIT_NAME
+%(
+       name = "io_submit"
+%)
+
+@define _SYSCALL_IO_SUBMIT_ARGSTR
+%(
+       argstr = sprintf("%u, %d, %p", ctx_id, nr, iocbpp_uaddr)
+%)
+
+probe syscall.io_submit = dw_syscall.io_submit !, nd_syscall.io_submit {}
+probe syscall.io_submit.return = dw_syscall.io_submit.return !, nd_syscall.io_submit.return {}
+
+# dw_io_submit _____________________________________________________
+
+probe dw_syscall.io_submit = __syscall.io_submit,
+       kernel.function("compat_sys_io_submit").call ?
+{
+       @_SYSCALL_IO_SUBMIT_NAME
+       ctx_id = __ulong($ctx_id)
+       nr = @__compat_long($nr)
+       iocbpp_uaddr = @choose_defined($iocbpp, $iocb)
+       @_SYSCALL_IO_SUBMIT_ARGSTR
+}
+probe __syscall.io_submit = kernel.function("sys_io_submit").call
+{
+       @__syscall_gate(@const("__NR_io_submit"))
+}
+probe dw_syscall.io_submit.return = __syscall.io_submit.return,
+       kernel.function("compat_sys_io_submit").return ?
+{
+       @_SYSCALL_IO_SUBMIT_NAME
+       retstr = return_str(1, $return)
+}
+probe __syscall.io_submit.return = kernel.function("sys_io_submit").return
+{
+       @__syscall_gate(@const("__NR_io_submit"))
+}
+
+# nd_io_submit _____________________________________________________
+
+probe nd_syscall.io_submit = __nd_syscall.io_submit,
+       kprobe.function("compat_sys_io_submit") ?
+{
+       @_SYSCALL_IO_SUBMIT_NAME
+       asmlinkage()
+       ctx_id = ulong_arg(1)
+       nr = long_arg(2)
+       iocbpp_uaddr = pointer_arg(3)
+       @_SYSCALL_IO_SUBMIT_ARGSTR
+}
+probe __nd_syscall.io_submit = kprobe.function("sys_io_submit") ?
+{
+       @__syscall_gate(@const("__NR_io_submit"))
+}
+probe nd_syscall.io_submit.return = __nd_syscall.io_submit.return,
+       kprobe.function("compat_sys_io_submit").return ?
+{
+       @_SYSCALL_IO_SUBMIT_NAME
+       retstr = returnstr(1)
+}
+probe __nd_syscall.io_submit.return = kprobe.function("sys_io_submit").return ?
+{
+       @__syscall_gate(@const("__NR_io_submit"))
+}
index 814e036df7885a6b0d52efa602a46b2acf10b287..861e1f457ff3e2f3bc97d38c11161b9af3cd89f6 100644 (file)
@@ -1,32 +1,4 @@
 
-# io_submit __________________________________________________
-# long compat_sys_io_submit(aio_context_t ctx_id, int nr, u32 __user *iocb)
-# long sys_io_submit(aio_context_t ctx_id, long nr, struct iocb __user * __user *iocbpp)
-#
-probe syscall.io_submit = __syscall.io_submit,
-       kernel.function("compat_sys_io_submit").call ?
-{
-       name = "io_submit"
-       ctx_id = __ulong($ctx_id)
-       nr = @__compat_long($nr)
-       iocbpp_uaddr = @choose_defined($iocbpp, $iocb)
-       argstr = sprintf("%u, %d, %p", ctx_id, nr, iocbpp_uaddr)
-}
-probe __syscall.io_submit = kernel.function("sys_io_submit").call
-{
-       @__syscall_gate(@const("__NR_io_submit"))
-}
-probe syscall.io_submit.return = __syscall.io_submit.return,
-       kernel.function("compat_sys_io_submit").return ?
-{
-       name = "io_submit"
-       retstr = return_str(1, $return)
-}
-probe __syscall.io_submit.return = kernel.function("sys_io_submit").return
-{
-       @__syscall_gate(@const("__NR_io_submit"))
-}
-
 # ioprio_get _________________________________________________
 # long sys_ioprio_get(int which, int who)
 #
This page took 0.031688 seconds and 5 git commands to generate.