diff options
Diffstat (limited to 'meta/recipes-kernel/systemtap/systemtap/tapset-linux-sendfile-syscall.patch')
-rw-r--r-- | meta/recipes-kernel/systemtap/systemtap/tapset-linux-sendfile-syscall.patch | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/meta/recipes-kernel/systemtap/systemtap/tapset-linux-sendfile-syscall.patch b/meta/recipes-kernel/systemtap/systemtap/tapset-linux-sendfile-syscall.patch new file mode 100644 index 0000000000..f945760fde --- /dev/null +++ b/meta/recipes-kernel/systemtap/systemtap/tapset-linux-sendfile-syscall.patch | |||
@@ -0,0 +1,22 @@ | |||
1 | systemtap: Fixed probe syscall.sendfile failure | ||
2 | |||
3 | compat_sendfile syscall is unavailable in kernels starting version 3.8. | ||
4 | Hence systemtap scripts like 'probe syscall.* { if (target()==pid()) log(name." ".argstr) }' fail. | ||
5 | This problem is solved by marking __syscall.compat_sendfile as optional in tapset/linux/syscalls2.stp | ||
6 | |||
7 | Upstream-Status: Pending | ||
8 | |||
9 | Signed-off-by: Mikhail Durnev <mikhail_durnev@mentor.com> | ||
10 | |||
11 | diff -Naur old/tapset/linux/syscalls2.stp new/tapset/linux/syscalls2.stp | ||
12 | --- old/tapset/linux/syscalls2.stp 2014-04-21 01:28:41.000000000 -0500 | ||
13 | +++ new/tapset/linux/syscalls2.stp 2014-04-21 01:38:14.961233914 -0500 | ||
14 | @@ -1953,7 +1953,7 @@ | ||
15 | # COMPAT_SYSCALL_DEFINE4(sendfile64, int, out_fd, int, in_fd, | ||
16 | # compat_loff_t __user *, offset, compat_size_t, count) | ||
17 | # | ||
18 | -probe syscall.sendfile = __syscall.sendfile, __syscall.compat_sendfile | ||
19 | +probe syscall.sendfile = __syscall.sendfile, __syscall.compat_sendfile ? | ||
20 | { | ||
21 | name = "sendfile" | ||
22 | out_fd = __int32($out_fd) | ||