summaryrefslogtreecommitdiffstats
path: root/tapset/syscalls.stp
diff options
context:
space:
mode:
authorZhaolei <zhaolei@cn.fujitsu.com>2008-06-17 17:04:47 +0800
committerZhaolei <zhaolei@cn.fujitsu.com>2008-06-17 17:04:47 +0800
commitc815c982cc0691360dfd3073276dba071aac840e (patch)
tree35e6062df3caf3b065318315a8f1b7b7c2d62345 /tapset/syscalls.stp
parent8215ea9a511c5acdec4eebb45f7e7cee8e1319bc (diff)
downloadsystemtap-steved-c815c982cc0691360dfd3073276dba071aac840e.tar.gz
systemtap-steved-c815c982cc0691360dfd3073276dba071aac840e.tar.xz
systemtap-steved-c815c982cc0691360dfd3073276dba071aac840e.zip
syscalls.stp: Add sys_linkat.
Diffstat (limited to 'tapset/syscalls.stp')
-rw-r--r--tapset/syscalls.stp28
1 files changed, 28 insertions, 0 deletions
diff --git a/tapset/syscalls.stp b/tapset/syscalls.stp
index f8a6be64..db550f02 100644
--- a/tapset/syscalls.stp
+++ b/tapset/syscalls.stp
@@ -2072,6 +2072,7 @@ probe syscall.lchown16.return = kernel.function("sys_lchown16").return ? {
name = "lchown16"
retstr = returnstr(1)
}
+
# lgetxattr __________________________________________________
# ssize_t sys_lgetxattr(char __user *path,
# char __user *name,
@@ -2094,6 +2095,7 @@ probe syscall.lgetxattr.return = kernel.function("sys_lgetxattr").return {
name = "lgetxattr"
retstr = returnstr(1)
}
+
# link _______________________________________________________
# long sys_link(const char __user * oldname,
# const char __user * newname)
@@ -2110,6 +2112,32 @@ probe syscall.link.return = kernel.function("sys_link").return {
retstr = returnstr(1)
}
+# linkat _____________________________________________________
+# new function with 2.6.16
+# long sys_linkat(int olddfd, const char __user *oldname,
+# int newdfd, const char __user *newname, int flags)
+probe syscall.linkat = kernel.function("sys_linkat") ? {
+ name = "linkat"
+ olddfd = $olddfd
+ olddfd_str = _dfd_str($olddfd)
+ oldname = $oldname
+ oldname_str = user_string($oldname)
+ newdfd = $newdfd
+ newdfd_str = _dfd_str($newdfd)
+ newname = $newname
+ newname_str = user_string($newname)
+ flags = $flags
+ flags_str = _at_flag_str($flags)
+ argstr = sprintf("%s, %s, %s, %s, %s",
+ olddfd_str, user_string_quoted($oldname),
+ newdfd_str, user_string_quoted($newname),
+ flags_str)
+}
+probe syscall.linkat.return = kernel.function("sys_linkat").return ? {
+ name = "linkat"
+ retstr = returnstr(1)
+}
+
# listen _____________________________________________________
# long sys_listen(int fd, int backlog)
probe syscall.listen = kernel.function("sys_listen") ? {