|
Server : Apache/2.2.2 (Fedora) System : Linux App1.pathumtani.go.th 2.6.20-1.2320.fc5smp #1 SMP Tue Jun 12 19:40:16 EDT 2007 i686 User : apache ( 48) PHP Version : 5.2.9 Disable Function : NONE Directory : /usr/share/systemtap/tapset/LKET/ |
Upload File : |
probe never
{
printf("%d",GROUP_NFS)
}
probe addevent.nfs
= addevent.nfs.entry,
addevent.nfs.return
{}
probe addevent.nfs.entry
= addevent.nfs.fop.entry,
addevent.nfs.aop.entry,
addevent.nfs.proc.entry
{}
probe addevent.nfs.return
= addevent.nfs.fop.return,
addevent.nfs.aop.return,
addevent.nfs.proc.return
{}
probe addevent.nfs.fop
= addevent.nfs.fop.entry,
addevent.nfs.fop.return
{}
probe addevent.nfs.fop.entry
=
addevent.nfs.fop.llseek.entry,
addevent.nfs.fop.read.entry,
addevent.nfs.fop.write.entry,
addevent.nfs.fop.aio_read.entry,
addevent.nfs.fop.aio_write.entry,
addevent.nfs.fop.mmap.entry,
addevent.nfs.fop.open.entry,
addevent.nfs.fop.flush.entry,
addevent.nfs.fop.release.entry,
addevent.nfs.fop.fsync.entry,
addevent.nfs.fop.lock.entry,
addevent.nfs.fop.sendfile.entry,
addevent.nfs.fop.check_flags.entry
{}
probe addevent.nfs.fop.return
=
addevent.nfs.fop.llseek.return,
addevent.nfs.fop.read.return,
addevent.nfs.fop.write.return,
addevent.nfs.fop.aio_read.return,
addevent.nfs.fop.aio_write.return,
addevent.nfs.fop.mmap.return,
addevent.nfs.fop.open.return,
addevent.nfs.fop.flush.return,
addevent.nfs.fop.release.return,
addevent.nfs.fop.fsync.return,
addevent.nfs.fop.lock.return,
addevent.nfs.fop.sendfile.return
// addevent.nfs.fop.check_flags.return
{}
%{
void getdevice(char * ,int * ,int *);
%}
function log_nfs_return (hookid:long,ret_val:long)
%{
_lket_trace(_GROUP_NFS,THIS->hookid,"%4b",THIS->ret_val);
%}
probe addevent.nfs.fop.llseek.entry
+= _addevent.nfs.fop.llseek.entry
{
update_record()
}
probe _addevent.nfs.fop.llseek.entry
= nfs.fop.llseek
{
log_fop_llseek(s_id,fileid,offset,origin)
}
function log_fop_llseek(s_id:long,ino:long,offset:long,origin:long)%{ /*pure*/
char * s_id = (char *)((long)THIS->s_id);
int major,minor;
getdevice(s_id,&major,&minor);
_lket_trace(_GROUP_NFS,_HOOKID_NFS_FOP_LLSEEK_ENTRY,"%1b%1b%8b%8b%1b",(_FMT_)major,(_FMT_)minor,
THIS->ino,THIS->offset,THIS->origin);
%}
probe addevent.nfs.fop.llseek.return
+= _addevent.nfs.fop.llseek.return
{
update_record()
}
probe _addevent.nfs.fop.llseek.return
= nfs.fop.llseek.return
{
log_nfs_return(HOOKID_NFS_FOP_LLSEEK_RETURN,$return)
}
probe addevent.nfs.fop.read.entry
+= _addevent.nfs.fop.read.entry
{
update_record()
}
probe _addevent.nfs.fop.read.entry
= nfs.fop.read
{
filesystem = kernel_string($filp->f_dentry->d_inode->i_sb->s_type->name)
if(filesystem == "nfs")
log_fop_rw(HOOKID_NFS_FOP_READ_ENTRY,s_id,fileid,buf,len,pos)
}
function log_fop_rw(hookid:long,s_id:long,ino:long,buf:long,len:long,pos:long) %{ /*pure*/
char * s_id = (char *)((long)THIS->s_id);
int major,minor;
getdevice(s_id,&major,&minor);
_lket_trace(_GROUP_NFS,THIS->hookid,"%1b%1b%8b%8b%8b%8b",(_FMT_)major,(_FMT_)minor,
THIS->ino,THIS->buf,THIS->len,THIS->pos);
%}
probe addevent.nfs.fop.read.return
+= _addevent.nfs.fop.read.return
{
update_record()
}
probe _addevent.nfs.fop.read.return
= nfs.fop.read.return
{
// log_nfs_return(HOOKID_NFS_FOP_READ_RETURN,$return)
}
probe addevent.nfs.fop.write.entry
+= _addevent.nfs.fop.write.entry
{
update_record()
}
probe _addevent.nfs.fop.write.entry
= nfs.fop.write
{
filesystem = kernel_string($filp->f_dentry->d_inode->i_sb->s_type->name)
if(filesystem == "nfs")
log_fop_rw(HOOKID_NFS_FOP_WRITE_ENTRY,s_id,fileid,buf,len,pos)
}
probe addevent.nfs.fop.write.return
+= _addevent.nfs.fop.write.return
{
update_record()
}
probe _addevent.nfs.fop.write.return
= nfs.fop.write.return
{
// log_nfs_return(HOOKID_NFS_FOP_WRITE_RETURN,$return)
}
probe addevent.nfs.fop.aio_read.entry
+= _addevent.nfs.fop.aio_read.entry
{
update_record()
}
probe _addevent.nfs.fop.aio_read.entry
= nfs.fop.aio_read
{
log_fop_rw(HOOKID_NFS_FOP_AIOREAD_ENTRY,s_id,fileid,buf,len,pos)
}
probe addevent.nfs.fop.aio_read.return
+= _addevent.nfs.fop.aio_read.return
{
update_record()
}
probe _addevent.nfs.fop.aio_read.return
= nfs.fop.aio_read.return
{
log_nfs_return(HOOKID_NFS_FOP_AIOREAD_RETURN,$return)
}
probe addevent.nfs.fop.aio_write.entry
+= _addevent.nfs.fop.aio_write.entry
{
update_record()
}
probe _addevent.nfs.fop.aio_write.entry
= nfs.fop.aio_write
{
log_fop_rw(HOOKID_NFS_FOP_AIOWRITE,s_id,fileid,buf,len,pos)
}
probe addevent.nfs.fop.aio_write.return
+= _addevent.nfs.fop.aio_write.return
{
update_record()
}
probe _addevent.nfs.fop.aio_write.return
= nfs.fop.aio_write.return
{
log_nfs_return(HOOKID_NFS_FOP_AIOWRITE_RETURN,$return)
}
probe addevent.nfs.fop.mmap.entry
+= _addevent.nfs.fop.mmap.entry
{
update_record()
}
probe _addevent.nfs.fop.mmap.entry
= nfs.fop.mmap
{
log_fop_mmap(s_id,fileid,vm_start,vm_end,vm_flags)
}
function log_fop_mmap(s_id:long,ino:long,vm_start:long,
vm_end:long,vm_flags:long)
%{/*pure*/
char * s_id = (char *)((long)THIS->s_id);
int major,minor;
getdevice(s_id,&major,&minor);
_lket_trace(_GROUP_NFS,_HOOKID_NFS_FOP_MMAP_ENTRY,"%1b%1b%8b%8b%8b%4b",
(_FMT_)major,(_FMT_)minor, THIS->ino,THIS->vm_start,
THIS->vm_end,THIS->vm_flags);
%}
probe addevent.nfs.fop.mmap.return
+= _addevent.nfs.fop.mmap.return
{
update_record()
}
probe _addevent.nfs.fop.mmap.return
= nfs.fop.mmap.return
{
log_nfs_return(HOOKID_NFS_FOP_MMAP_RETURN,$return)
}
probe addevent.nfs.fop.open.entry
+= _addevent.nfs.fop.open.entry
{
update_record()
}
probe _addevent.nfs.fop.open.entry
= nfs.fop.open
{
log_fop_open(s_id,fileid,flag,filename)
}
function log_fop_open(s_id:long,ino:long,flag :long , filename:string)
%{/*pure*/
char * s_id = (char *)((long)THIS->s_id);
int major,minor;
getdevice(s_id,&major,&minor);
_lket_trace(_GROUP_NFS,_HOOKID_NFS_FOP_OPEN_ENTRY,"%1b%1b%8b%4b%0s",
(_FMT_)major,(_FMT_)minor,
THIS->ino,THIS->flag,THIS->filename);
%}
probe addevent.nfs.fop.open.return
+= _addevent.nfs.fop.open.return
{
update_record()
}
probe _addevent.nfs.fop.open.return
= nfs.fop.open.return
{
log_nfs_return(HOOKID_NFS_FOP_OPEN_RETURN,$return)
}
probe addevent.nfs.fop.flush.entry
+= _addevent.nfs.fop.flush.entry
{
update_record()
}
probe _addevent.nfs.fop.flush.entry
= nfs.fop.flush
{
log_fop_flush(s_id,fileid,ndirty)
}
function log_fop_flush(s_id:long,ino:long,ndirty:long)
%{/*pure*/
char * s_id = (char *)((long)THIS->s_id);
int major,minor;
getdevice(s_id,&major,&minor);
_lket_trace(_GROUP_NFS,_HOOKID_NFS_FOP_FLUSH_ENTRY,"%1b%1b%8b%4b",
(_FMT_)major,(_FMT_)minor, THIS->ino,THIS->ndirty);
%}
probe addevent.nfs.fop.flush.return
+= _addevent.nfs.fop.flush.return
{
update_record()
}
probe _addevent.nfs.fop.flush.return
= nfs.fop.flush.return
{
log_nfs_return(HOOKID_NFS_FOP_FLUSH_RETURN,$return)
}
probe addevent.nfs.fop.release.entry
+= _addevent.nfs.fop.release.entry
{
update_record()
}
probe _addevent.nfs.fop.release.entry
= nfs.fop.release
{
log_fop_release(s_id,fileid,mode)
}
function log_fop_release(s_id:long,ino:long,mode:long)
%{/*pure*/
char * s_id = (char *)((long)THIS->s_id);
int major,minor;
getdevice(s_id,&major,&minor);
_lket_trace(_GROUP_NFS,_HOOKID_NFS_FOP_RELEASE_ENTRY,"%1b%1b%8b%2b",
(_FMT_)major,(_FMT_)minor,
THIS->ino,THIS->mode);
%}
probe addevent.nfs.fop.release.return
+= _addevent.nfs.fop.release.return
{
update_record()
}
probe _addevent.nfs.fop.release.return
= nfs.fop.release.return
{
log_nfs_return(HOOKID_NFS_FOP_RELEASE_RETURN,$return)
}
probe addevent.nfs.fop.fsync.entry
+= _addevent.nfs.fop.fsync.entry
{
update_record()
}
probe _addevent.nfs.fop.fsync.entry
= nfs.fop.fsync
{
log_fop_fsync(s_id,fileid,ndirty)
}
function log_fop_fsync(s_id:long,ino:long,ndirty:long)
%{/*pure*/
char * s_id = (char *)((long)THIS->s_id);
int major,minor;
getdevice(s_id,&major,&minor);
_lket_trace(_GROUP_NFS,_HOOKID_NFS_FOP_FSYNC_ENTRY,"%1b%1b%8b%4b",
(_FMT_)major,(_FMT_)minor, THIS->ino,THIS->ndirty);
%}
probe addevent.nfs.fop.fsync.return
+= _addevent.nfs.fop.fsync.return
{
update_record()
}
probe _addevent.nfs.fop.fsync.return
= nfs.fop.fsync.return
{
log_nfs_return(HOOKID_NFS_FOP_FSYNC_RETURN,$return)
}
probe addevent.nfs.fop.lock.entry
+= _addevent.nfs.fop.lock.entry
{
update_record()
}
probe _addevent.nfs.fop.lock.entry
= nfs.fop.lock
{
log_fop_lock(s_id,fileid,fl_start,fl_end,fl_type,fl_flag,cmd)
}
function log_fop_lock(s_id:long,ino:long,fl_start:long,fl_end:long,fl_type:long,fl_flag:long,cmd:long)
%{/*pure*/
char * s_id = (char *)((long)THIS->s_id);
int major,minor;
getdevice(s_id,&major,&minor);
_lket_trace(_GROUP_NFS,_HOOKID_NFS_FOP_LOCK_ENTRY,"%1b%1b%8b%8b%8b%1b%1b%4b",
(_FMT_)major,(_FMT_)minor, THIS->ino,THIS->fl_start,THIS->fl_end,
THIS->fl_type,THIS->fl_flag,THIS->cmd);
%}
probe addevent.nfs.fop.lock.return
+= _addevent.nfs.fop.lock.return
{
update_record()
}
probe _addevent.nfs.fop.lock.return
= nfs.fop.lock.return
{
log_nfs_return(HOOKID_NFS_FOP_LOCK_RETURN,$return)
}
probe addevent.nfs.fop.sendfile.entry
+= _addevent.nfs.fop.sendfile.entry
{
update_record()
}
probe _addevent.nfs.fop.sendfile.entry
= nfs.fop.sendfile
{
log_fop_sendfile(s_id,fileid,count,ppos)
}
function log_fop_sendfile(s_id:long,ino:long,count:long,ppos:long)
%{/*pure*/
char * s_id = (char *)((long)THIS->s_id);
int major,minor;
getdevice(s_id,&major,&minor);
_lket_trace(_GROUP_NFS,_HOOKID_NFS_FOP_SENDFILE_ENTRY,"%1b%1b%8b%8b%8b",
(_FMT_)major,(_FMT_)minor, THIS->ino,THIS->count,THIS->ppos);
%}
probe addevent.nfs.fop.sendfile.return
+= _addevent.nfs.fop.sendfile.return
{
update_record()
}
probe _addevent.nfs.fop.sendfile.return
= nfs.fop.sendfile.return
{
log_nfs_return(HOOKID_NFS_FOP_SENDFILE_RETURN,$return)
}
probe addevent.nfs.fop.check_flags.entry
+= _addevent.nfs.fop.check_flags.entry
{
update_record()
}
probe _addevent.nfs.fop.check_flags.entry
= nfs.fop.check_flags
{
log_fop_check_flags(flag)
}
function log_fop_check_flags(flag:long)
%{/*pure*/
_lket_trace(_GROUP_NFS,_HOOKID_NFS_FOP_CHECKFLAGS_ENTRY,"%4b",THIS->flag);
%}
/*
probe addevent.nfs.fop.check_flags.return
+= _addevent.nfs.fop.check_flags.return
{
update_record()
}
probe _addevent.nfs.fop.check_flags.return
= nfs.fop.check_flags.return
{
log_nfs_return(HOOKID_NFS_FOP_CHECKFLAGS_RETURN,$return)
}
*/
probe addevent.nfs.aop
= addevent.nfs.aop.entry,
addevent.nfs.aop.return
{}
probe addevent.nfs.aop.entry
=
addevent.nfs.aop.readpage.entry,
addevent.nfs.aop.readpages.entry,
addevent.nfs.aop.writepage.entry,
addevent.nfs.aop.writepages.entry,
addevent.nfs.aop.release_page.entry,
addevent.nfs.aop.set_page_dirty.entry,
addevent.nfs.aop.prepare_write.entry,
addevent.nfs.aop.commit_write.entry
{}
probe addevent.nfs.aop.return
=
addevent.nfs.aop.readpage.return,
addevent.nfs.aop.readpages.return,
addevent.nfs.aop.writepage.return,
addevent.nfs.aop.writepages.return,
addevent.nfs.aop.release_page.return,
addevent.nfs.aop.set_page_dirty.return,
addevent.nfs.aop.prepare_write.return,
addevent.nfs.aop.commit_write.return
{}
probe addevent.nfs.aop.readpages.entry
+= _addevent.nfs.aop.readpages.entry
{
update_record()
}
probe _addevent.nfs.aop.readpages.entry
= nfs.aop.readpages
{
log_aop_readpages(fileid,rpages,nr_pages)
}
function log_aop_readpages(ino:long,rpages:long,nr_pages:long)
%{/*pure*/
_lket_trace(_GROUP_NFS,_HOOKID_NFS_AOP_READPAGES_ENTRY,"%8b%4b%4b",
THIS->ino,THIS->rpages,THIS->nr_pages);
%}
probe addevent.nfs.aop.readpages.return
+= _addevent.nfs.aop.readpages.return
{
update_record()
}
probe _addevent.nfs.aop.readpages.return
= nfs.aop.readpages.return
{
log_nfs_return(HOOKID_NFS_AOP_READPAGES_RETURN,$return)
}
probe addevent.nfs.aop.readpage.entry
+= _addevent.nfs.aop.readpage.entry
{
update_record()
}
probe _addevent.nfs.aop.readpage.entry
= nfs.aop.readpage
{
log_aop_readpage(fileid,rsize,__page,page_index)
}
function log_aop_readpage(ino:long,rsize:long,__page:long,page_index:long)
%{/*pure*/
_lket_trace(_GROUP_NFS,_HOOKID_NFS_AOP_READPAGE_ENTRY,"%8b%4b%8b%8b",
THIS->ino,THIS->rsize,THIS->__page,THIS->page_index);
%}
probe addevent.nfs.aop.readpage.return
+= _addevent.nfs.aop.readpage.return
{
update_record()
}
probe _addevent.nfs.aop.readpage.return
= nfs.aop.readpage.return
{
log_nfs_return(HOOKID_NFS_AOP_READPAGE_RETURN,$return)
}
probe addevent.nfs.aop.writepage.entry
+= _addevent.nfs.aop.writepage.entry
{
update_record()
}
probe _addevent.nfs.aop.writepage.entry
= nfs.aop.writepage
{
log_aop_writepage(fileid,wsize,__page,page_index)
}
function log_aop_writepage(ino:long,wsize:long,__page:long,page_index:long)
%{/*pure*/
_lket_trace(_GROUP_NFS,_HOOKID_NFS_AOP_WRITEPAGE_ENTRY,"%8b%4b%8b%8b",
THIS->ino,THIS->wsize,THIS->__page,THIS->page_index);
%}
probe addevent.nfs.aop.writepage.return
+= _addevent.nfs.aop.writepage.return
{
update_record()
}
probe _addevent.nfs.aop.writepage.return
= nfs.aop.writepage.return
{
log_nfs_return(HOOKID_NFS_AOP_WRITEPAGE_RETURN,$return)
}
probe addevent.nfs.aop.writepages.entry
+= _addevent.nfs.aop.writepages.entry
{
update_record()
}
probe _addevent.nfs.aop.writepages.entry
= nfs.aop.writepages
{
log_aop_writepages(fileid,wpages,nr_to_write)
}
function log_aop_writepages(ino:long,wpages:long,nr_to_write:long)
%{/*pure*/
_lket_trace(_GROUP_NFS,_HOOKID_NFS_AOP_WRITEPAGES_ENTRY,"%8b%4b%8b",
THIS->ino,THIS->wpages,THIS->nr_to_write);
%}
probe addevent.nfs.aop.writepages.return
+= _addevent.nfs.aop.writepages.return
{
update_record()
}
probe _addevent.nfs.aop.writepages.return
= nfs.aop.writepages.return
{
log_nfs_return(HOOKID_NFS_AOP_WRITEPAGES_RETURN,$return)
}
probe addevent.nfs.aop.prepare_write.entry
+= _addevent.nfs.aop.prepare_write.entry
{
update_record()
}
probe _addevent.nfs.aop.prepare_write.entry
= nfs.aop.prepare_write
{
log_aop_prepare_write(fileid,__page,page_index)
}
function log_aop_prepare_write(ino:long,__page:long,page_index:long)
%{/*pure*/
_lket_trace(_GROUP_NFS,_HOOKID_NFS_AOP_PREPAREWRITE_ENTRY,"%8b%8b%8b",
THIS->ino,THIS->__page,THIS->page_index);
%}
probe addevent.nfs.aop.prepare_write.return
+= _addevent.nfs.aop.prepare_write.return
{
update_record()
}
probe _addevent.nfs.aop.prepare_write.return
= nfs.aop.prepare_write.return
{
log_nfs_return(HOOKID_NFS_AOP_PREPAREWRITE_RETURN,$return)
}
probe addevent.nfs.aop.commit_write.entry
+= _addevent.nfs.aop.commit_write.entry
{
update_record()
}
probe _addevent.nfs.aop.commit_write.entry
= nfs.aop.commit_write
{
log_aop_commit_write(fileid,__page,page_index,offset,count)
}
function log_aop_commit_write(ino:long,__page:long,page_index:long,offset:long,count:long)
%{/*pure*/
_lket_trace(_GROUP_NFS,_HOOKID_NFS_AOP_COMMITWRITE_ENTRY,"%8b%8b%8b%4b%4b",
THIS->ino,THIS->__page, THIS->page_index,THIS->offset,THIS->count);
%}
probe addevent.nfs.aop.commit_write.return
+= _addevent.nfs.aop.commit_write.return
{
update_record()
}
probe _addevent.nfs.aop.commit_write.return
= nfs.aop.commit_write.return
{
log_nfs_return(HOOKID_NFS_AOP_COMMITWRITE_RETURN,$return)
}
probe addevent.nfs.aop.set_page_dirty.entry
+= _addevent.nfs.aop.set_page_dirty.entry
{
update_record()
}
probe _addevent.nfs.aop.set_page_dirty.entry
= nfs.aop.set_page_dirty
{
// log_aop_set_page_dirty(__page,page_flag)
}
function log_aop_set_page_dirty(__page:long,page_flag:long)
%{/*pure*/
_lket_trace(_GROUP_NFS,_HOOKID_NFS_AOP_SETPAGEDIRTY_ENTRY,"%8b%1b",
THIS->__page,THIS->page_flag);
%}
probe addevent.nfs.aop.set_page_dirty.return
+= _addevent.nfs.aop.set_page_dirty.return
{
update_record()
}
probe _addevent.nfs.aop.set_page_dirty.return
= nfs.aop.set_page_dirty.return
{
//log_nfs_return(HOOKID_NFS_AOP_SETPAGEDIRTY_RETURN,$return)
}
probe addevent.nfs.aop.release_page.entry
+= _addevent.nfs.aop.release_page.entry
{
update_record()
}
probe _addevent.nfs.aop.release_page.entry
= nfs.aop.release_page
{
log_aop_release_page(__page,page_index)
}
function log_aop_release_page(__page:long,page_index:long)
%{/*pure*/
_lket_trace(_GROUP_NFS,_HOOKID_NFS_AOP_RELEASEPAGE_ENTRY,"%8b%8b",
THIS->__page,THIS->page_index);
%}
probe addevent.nfs.aop.release_page.return
+= _addevent.nfs.aop.release_page.return
{
update_record()
}
probe _addevent.nfs.aop.release_page.return
= nfs.aop.release_page.return
{
log_nfs_return(HOOKID_NFS_AOP_RELEASEPAGE_RETURN,$return)
}