Hey Neel - Try this: nv70b> cat zfs_page.d #!/usr/sbin/dtrace -s
#pragma D option quiet zfs_putpage:entry { printf("zfs write to %s\n",stringof(args[0]->v_path)); } zfs_getpage:entry { printf("zfs read from %s\n",stringof(args[0]->v_path)); } I did some quick tests with mmap'd ZFS files, and it seems to work.... /jim Neelakanth Nadgir wrote: > Jim I can't use zfs_read/write as the file is mmap()'d so no read/write! > > -neel > > On Sep 26, 2007, at 5:07 AM, Jim Mauro <[EMAIL PROTECTED]> wrote: > > >> Hi Neel - Thanks for pushing this out. I've been tripping over this >> for a while. >> >> You can instrument zfs_read() and zfs_write() to reliably track >> filenames: >> >> #!/usr/sbin/dtrace -s >> >> #pragma D option quiet >> >> zfs_read:entry, >> zfs_write:entry >> { >> printf("%s of %s\n",probefunc, stringof(args[0]->v_path)); >> } >> >> >> >> I'm not sure why the io:::start does not work for ZFS. I didn't >> spend any real time on this, >> but it appears none of the ZFS code calls bdev_strategy() directly, >> and >> instrumenting bdev_strategy:enter (which is where io:::start lives) >> to track >> filenames via stringof(args[0]->b_vp->v_path) does not work either. >> >> Use the zfs r/w function entry points for now. >> >> What sayeth the ZFS team regarding the use of a stable DTrace >> provider with their file system? >> >> Thanks, >> /jim >> >> >> Neelakanth Nadgir wrote: >> >>> io:::start probe does not seem to get zfs filenames in >>> args[2]->fi_pathname. Any ideas how to get this info? >>> -neel >>> >>> _______________________________________________ >>> zfs-discuss mailing list >>> zfs-discuss@opensolaris.org >>> http://mail.opensolar >>> > _______________________________________________ > zfs-discuss mailing list > zfs-discuss@opensolaris.org > http://mail.opensolaris.org/mailman/listinfo/zfs-discuss > _______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss