> What sayeth the ZFS team regarding the use of a stable DTrace provider 
> with their file system?
>   

For the record, the above has a tone to it that I really did not intend 
(antagonistic?), so....

I had a good chat with Roch about this. The file pathname is derived via 
a translator
from the vnode v_path structure member, and thus requires an 
instantiated vnode
when the probe fires - this is why instrumenting bdev_strategy:entry and 
tracing
args[0]->b_vp->v_path has the same problem; no vnode.

An alternative approach to tracking filenames with IOs is using the 
fsinfo provider
(Solaris 10 Update 2) . This is a handy place to start:

#!/usr/sbin/dtrace -s

#pragma D option quiet

fsinfo:::
/ execname != "dtrace" /
{
        @[execname, args[0]->fi_pathname, args[0]->fi_fs, probename] = 
count();
}

END
{
        printf("%-16s %-24s %-8s %-16s 
%-8s\n","EXEC","PATH","FS","NAME","COUNT");
        printa("%-16s %-24s %-8s %-16s [EMAIL PROTECTED]",@);
}

Which yields...

EXEC             PATH                     FS       NAME             COUNT  
gnome-panel      /zp                      ufs      lookup           1      
gnome-panel      /zp/home                 zfs      lookup           1      
gnome-panel      /zp/home/mauroj          zfs      lookup           1      
gnome-panel      /zp/home/mauroj/.recently-used.xbel.HKF3YT zfs      
getattr          1      
gnome-panel      /zp/home/mauroj/.recently-used.xbel.HKF3YT zfs      
lookup           1      
<snip>
metacity         <unknown>                sockfs   poll             1031   
vmware-user      <unknown>                sockfs   poll             1212   
Xorg             <unknown>                sockfs   rwlock           1573   
Xorg             <unknown>                sockfs   rwunlock         1573   
gnome-terminal   <unknown>                sockfs   poll             2084   
dbwriter         /zp/space                zfs      realvp           4254   
dbwriter         /zp/space                zfs      remove           4254   
dbwriter         /zp/space/f33            zfs      close            4254   
dbwriter         /zp/space/f33            zfs      lookup           4254   
dbwriter         /zp/space/f33            zfs      read             4254   
dbwriter         /zp/space/f33            zfs      realvp           4254   
dbwriter         /zp/space/f33            zfs      seek             4254   
dbwriter         /zp/space/f33            zfs      write            4254   
dbwriter         /zp/space                zfs      getsecattr       4255   
dbwriter         /zp/space/f33            zfs      ioctl            4255   
dbwriter         /zp/space/f33            zfs      open             4255   
dbwriter         <unknown>                zfs      create           4255   
dbwriter         /zp/space/f33            zfs      rwunlock         8508   
dbwriter         /zp/space                zfs      lookup           8509   
dbwriter         /zp/space/f33            zfs      rwlock           8509   
dbwriter         /zp                      ufs      lookup           8515   

Thanks,
/jim

_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to