diff options
-rw-r--r-- | tapset/ChangeLog | 4 | ||||
-rw-r--r-- | tapset/syscalls2.stp | 22 |
2 files changed, 26 insertions, 0 deletions
diff --git a/tapset/ChangeLog b/tapset/ChangeLog index 71f0edd1..29c10507 100644 --- a/tapset/ChangeLog +++ b/tapset/ChangeLog @@ -1,3 +1,7 @@ +2008-07-18 Zhaolei <zhaolei@cn.fujitsu.com> + + * syscalls2.stp: Add sys_symlinkat. + 2008-07-14 David Smith <dsmith@redhat.com> * i686/registers.stp: Removed syscall_nr function. diff --git a/tapset/syscalls2.stp b/tapset/syscalls2.stp index 64cbaa1d..910193ef 100644 --- a/tapset/syscalls2.stp +++ b/tapset/syscalls2.stp @@ -2463,6 +2463,7 @@ probe syscall.swapon.return = kernel.function("sys_swapon").return ? { name = "swapon" retstr = returnstr(1) } + # symlink ____________________________________________________ # long sys_symlink(const char __user * oldname, # const char __user * newname) @@ -2477,6 +2478,27 @@ probe syscall.symlink.return = kernel.function("sys_symlink").return { name = "symlink" retstr = returnstr(1) } + +# symlinkat __________________________________________________ +# new function with 2.6.16 +# long sys_symlinkat(const char __user *oldname, int newdfd, +# const char __user *newname) +probe syscall.symlinkat = kernel.function("sys_symlinkat") ? { + name = "symlinkat" + oldname = $oldname + oldname_str = user_string($oldname) + newdfd = $newdfd + newdfd_str = _dfd_str($newdfd) + newname = $newname + newname_str = user_string($newname) + argstr = sprintf("%s, %s, %s", user_string_quoted($oldname), + newdfd_str, user_string_quoted($newname)) +} +probe syscall.symlinkat.return = kernel.function("sys_symlinkat").return ? { + name = "symlinkat" + retstr = returnstr(1) +} + # sync _______________________________________________________ # # sys_sync(void) |