summaryrefslogtreecommitdiffstats
path: root/tapset
diff options
context:
space:
mode:
authorSteve Dickson <steved@redhat.com>2008-05-14 12:54:58 -0400
committerSteve Dickson <steved@redhat.com>2008-05-14 12:54:58 -0400
commitc1219627e96c121a5a7f69a19c44c5fc98c8ab77 (patch)
tree282df271c977459adadfc675af10b22a3eea438c /tapset
parent06b10622ae9c1bb929d088ed7f0faa33eac18503 (diff)
downloadsystemtap-c1219627e96c121a5a7f69a19c44c5fc98c8ab77.tar.gz
systemtap-c1219627e96c121a5a7f69a19c44c5fc98c8ab77.tar.xz
systemtap-c1219627e96c121a5a7f69a19c44c5fc98c8ab77.zip
Added in nfs_auth.stp tapset/task.stp xprt.stp
Diffstat (limited to 'tapset')
-rw-r--r--tapset/task.stp23
1 files changed, 23 insertions, 0 deletions
diff --git a/tapset/task.stp b/tapset/task.stp
new file mode 100644
index 0000000..d409a96
--- /dev/null
+++ b/tapset/task.stp
@@ -0,0 +1,23 @@
+%{
+#include <linux/kernel.h>
+#include <linux/sunrpc/clnt.h>
+#include <linux/sunrpc/svc.h>
+%}
+
+function task_dump:string(_task:long)
+%{
+ struct rpc_task *task = (struct rpc_task *)(long) kread(&(THIS->_task));
+ char buf[MAXSTRINGLEN];
+ int cc=0;
+
+ if (task <= 0) {
+ sprintf(buf+cc, "task NULL");
+ } else {
+ sprintf(buf+cc, "task %p tk_pid %d tk_status %d\n",
+ task, task->tk_pid, task->tk_status);
+ cc = strlen(buf);
+ }
+ snprintf(THIS->__retvalue, MAXSTRINGLEN, "%s", buf);
+
+ CATCH_DEREF_FAULT();
+%}