summaryrefslogtreecommitdiffstats
path: root/tapset
diff options
context:
space:
mode:
Diffstat (limited to 'tapset')
-rw-r--r--tapset/ChangeLog7
-rw-r--r--tapset/syscalls2.stp18
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"