summaryrefslogtreecommitdiffstats
path: root/doc/tutorial/inode-watch.stp
blob: 2209f309f138503380715720de90269fa26ed238 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
probe kernel.function ("vfs_write"),
      kernel.function ("vfs_read")
{
%( kernel_v >= "2.6.20" %?
  dev_nr = $file->f_path->dentry->d_inode->i_sb->s_dev
  inode_nr = $file->f_path->dentry->d_inode->i_ino
%:
  dev_nr = $file->f_dentry->d_inode->i_sb->s_dev
  inode_nr = $file->f_dentry->d_inode->i_ino
%)

  if (dev_nr == ($1 << 20 | $2) # major/minor device
      && inode_nr == $3)
    printf ("%s(%d) %s 0x%x/%u\n",
      execname(), pid(), probefunc(), dev_nr, inode_nr)
}