summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorSteve Dickson <steved@redhat.com>2009-11-17 11:44:37 -0500
committerSteve Dickson <steved@redhat.com>2009-11-17 11:44:37 -0500
commitab361a8190ccef2cb675569b5cc8dddc579cb1bb (patch)
tree99e70b6724d70b3ab2b7029eadf52eda3bee2cbd /sys
parente53853a96bb7f6cf8abf69fcd6645bc2cd9db9d2 (diff)
parent536fe50ff10ac2048dd5d6a3b175c9a1cc384b7a (diff)
downloadsystemtap-ab361a8190ccef2cb675569b5cc8dddc579cb1bb.tar.gz
systemtap-ab361a8190ccef2cb675569b5cc8dddc579cb1bb.tar.xz
systemtap-ab361a8190ccef2cb675569b5cc8dddc579cb1bb.zip
Merge branch 'master' of git://fedorapeople.org/~steved/systemtap
Diffstat (limited to 'sys')
-rw-r--r--sys/open_namei.stp18
-rw-r--r--sys/sysmount.stp47
2 files changed, 65 insertions, 0 deletions
diff --git a/sys/open_namei.stp b/sys/open_namei.stp
new file mode 100644
index 0000000..3dda40a
--- /dev/null
+++ b/sys/open_namei.stp
@@ -0,0 +1,18 @@
+function pname:string (name:long) %{
+ /*char *pathname = (char *)kread(&(THIS->name)); */
+
+ deref_string(THIS->__retvalue, THIS->name, MAXSTRINGLEN);
+
+ CATCH_DEREF_FAULT();
+%}
+probe kernel.function("open_namei")
+{
+ /* printf("pathname %s\n", kernel_string($pathname)); */
+ printf("pathname %s\n", pname($pathname));
+}
+probe kernel.function("open_namei").return
+{
+ printf("return %d\n", $return);
+}
+probe begin { log("starting open_namei probe") }
+probe end { log("ending open_namei probe") }
diff --git a/sys/sysmount.stp b/sys/sysmount.stp
new file mode 100644
index 0000000..24a5190
--- /dev/null
+++ b/sys/sysmount.stp
@@ -0,0 +1,47 @@
+probe syscall.mount
+{
+ printf("sys_mount: %s\n", argstr);
+}
+probe syscall.mount.return
+{
+ printf("sys_mount: return %s\n", retstr);
+}
+/*
+probe kernel.function("get_fs_type")
+{
+ name = user_string($name);
+ printf(" get_fs_type: fstype %s name %s\n", fstype, name);
+}
+probe kernel.function("get_fs_type").return
+{
+ printf(" get_fs_type: return %p\n", $fs);
+}
+*/
+probe kernel.function("do_add_mount")
+{
+ printf(" do_add_mount: newmnt %p\n", $newmnt);
+}
+probe kernel.function("do_add_mount").return
+{
+ printf(" do_add_mount: return %d\n", $return);
+}
+probe kernel.function("graft_tree")
+{
+ printf(" graft_tree: mnt %p\n", $mnt);
+}
+probe kernel.function("graft_tree").return
+{
+ printf(" graft_tree: return %d\n", $return);
+}
+
+probe kernel.function("vfs_kern_mount")
+{
+ name = user_string($name);
+ printf(" vfs_kern_mount: %s\n", name);
+}
+probe kernel.function("vfs_kern_mount").return
+{
+ printf(" vfs_kern_mount: return %p\n", $error);
+}
+probe begin { log("sys_mount probe") }
+probe end { log("sys_mount probe") }