diff options
Diffstat (limited to 'tapset')
-rw-r--r-- | tapset/ChangeLog | 7 | ||||
-rw-r--r-- | tapset/syscalls2.stp | 18 |
2 files changed, 23 insertions, 2 deletions
diff --git a/tapset/ChangeLog b/tapset/ChangeLog index 4aedbfc5..b9462633 100644 --- a/tapset/ChangeLog +++ b/tapset/ChangeLog @@ -1,3 +1,10 @@ +2007-07-30 Dave Wilder <dwilder@us.ibm.com> + PR 4794 + * syscalls2.stp (syscall.pread and syscall.pread32) + For s390x only changed the $buf argument to $ubuf. + Change the format for count and position from %p to %d + to make it consistant with sys_read and sys_write. + 2007-07-25 Mike Mason <mmlnx@us.ibm.com> PR 4386 diff --git a/tapset/syscalls2.stp b/tapset/syscalls2.stp index 7c5b4854..0554f3cf 100644 --- a/tapset/syscalls2.stp +++ b/tapset/syscalls2.stp @@ -396,7 +396,7 @@ probe syscall.pread = kernel.function("sys_pread64") { buf_uaddr = $buf count = $count offset = $pos - argstr = sprintf("%d, %p, %p, %p", $fd, $buf, $count, $pos) + argstr = sprintf("%d, %p, %d, %d", $fd, $buf, $count, $pos) } probe syscall.pread.return = kernel.function("sys_pread64").return { name = "pread" @@ -410,7 +410,13 @@ probe syscall.pread32 = kernel.function("sys32_pread64") ? { buf_uaddr = $buf count = $count offset = ($poshi << 32) + $poslo - argstr = sprintf("%d, %p, %p, %p", $fd, $buf, $count, ($poshi << 32) + $poslo) +%( arch == "s390x" %? + buf_uaddr = $ubuf + argstr = sprintf("%d, %p, %d, %d", $fd, $ubuf, $count, ($poshi << 32) + $poslo) +%: + buf_uaddr = $buf + argstr = sprintf("%d, %p, %d, %d", $fd, $buf, $count, ($poshi << 32) + $poslo) +%) } probe syscall.pread32.return = kernel.function("sys32_pread64").return ? { name = "pread" @@ -517,9 +523,17 @@ probe syscall.pwrite32 = kernel.function("sys32_pwrite64") ? { buf_uaddr = $buf count = $count offset = ($poshi << 32) + $poslo +%( arch == "s390x" %? + buf_uaddr = $ubuf + argstr = sprintf("%d, %s, %d, %d", $fd, + text_strn(user_string($ubuf),syscall_string_trunc,1), + $count, ($poshi << 32) + $poslo) +%: + buf_uaddr = $buf argstr = sprintf("%d, %s, %d, %d", $fd, text_strn(user_string($buf),syscall_string_trunc,1), $count, ($poshi << 32) + $poslo) +%) } probe syscall.pwrite32.return = kernel.function("sys32_pwrite64").return ? { name = "pwrite" |