This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: prototype ext3 tapset


Hi TOM,

I am working on nfs tapset recently. I reuses vfs.stp from you to avoid some duplicated work. During the working on ext3.stp and vfs.stp, I makes some changes to ext3.stp and vfs.stp. I adds some new variables in those two files.

One question is about "datasync" in probe ext3.fop.fsync,i am not sure this variable contains some important information,but it's never used in the ext3_sync_file ,so i delete it in probe ext3.fop.fsync.

How about your idea?

Attached is the detail of the changes

- Xuepeng

--- ext3.stp	2006-08-03 16:31:13.000000000 -0400
+++ ext3.stp.bnk	2006-08-03 16:31:51.000000000 -0400
@@ -158,9 +158,12 @@
 	dev = $filp->f_dentry->d_inode->i_sb->s_dev
 	devname = __find_bdevname(dev, $filp->f_dentry->d_inode->i_sb->s_bdev)
 	ino = $inode->i_ino
+      
+        count = $inode->i_writecount->counter
+        mode = $filp->f_mode
 
 	name = "ext3.fop.release"
-	argstr = sprintf("%d" , ino)
+	argstr = sprintf("%d,%d" , count,mode)
 }
 probe ext3.fop.release.return = kernel.function ("ext3_release_file").return ?,
 	module("ext3").function ("ext3_release_file").return ?
@@ -176,10 +179,8 @@
 	devname = __find_bdevname(dev, $file->f_dentry->d_inode->i_sb->s_bdev)
 	ino = $file->f_dentry->d_inode->i_ino
 
-	datasync = $datasync
-
 	name = "ext3.fop.fsync"
-	argstr = sprintf("%d" , datasync)
+	argstr = sprintf("%d" , ino)
 }
 probe ext3.fop.fsync.return = kernel.function ("ext3_sync_file").return ?,
 	module("ext3").function ("ext3_sync_file").return ?
--- vfs.stp	2006-08-03 16:31:17.000000000 -0400
+++ vfs.stp.bnk	2006-08-03 16:31:41.000000000 -0400
@@ -96,6 +96,7 @@
 
 	offset = $offset
 	origin = $origin
+        maxbyte = $file->f_dentry->d_inode->i_sb->s_maxbytes
 
 	name = "generic_file_llseek"
 	argstr = sprintf("%d, %d", offset, origin)
@@ -115,9 +116,10 @@
 
 	count = $count
 	pos = $pos
+        buf = $buf
 
 	name = "generic_file_aio_read"
-	argstr = sprintf("%d, %d", count, pos)
+	argstr = sprintf("%d, %d, %p", count, pos,buf)
 
 	size = count
 	units = "bytes"
@@ -241,9 +243,11 @@
 	ino = $inode->i_ino
 
 	filename = kernel_string($filp->f_dentry->d_name->name)
+        flag = $filp->f_flags
+        size = $inode->size
 
 	name = "generic_file_open"
-	argstr = sprintf("%d, %s", ino, filename)
+	argstr = sprintf("%d, %s", ino, flag, filename)
 }
 probe generic.fop.open.return = kernel.function ("generic_file_open").return
 {
@@ -258,6 +262,7 @@
 	ino = $in_file->f_dentry->d_inode->i_ino
 
 	count = $count
+        ppos = $ppos
 
 	name = "generic_file_sendfile"
 	argstr = sprintf("%d", count)
@@ -406,9 +411,10 @@
 
 	len = $len
 	pos = ppos_pos($ppos)
+        buf = $buf
 
 	name = "do_sync_read"
-	argstr = sprintf("%d, %d", len, pos)
+	argstr = sprintf("%d, %d , %p ", len, pos,buf)
 
 	size = len
 	units = "bytes"

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]