#!/usr/sbin/dtrace -s ::fop_read:entry /self->trace == 0/ { vp = (vnode_t*)arg0; self->path=stringof(vp->v_path); self->trace = 1; trace(stringof(vp->v_path)); @logical[stringof(vp->v_path)] = count(); } ::fop_read:return /self->trace == 1/ { trace(arg1); self->trace = 0; } ::segmap_getmapflt:entry { trace(arg1); trace(arg2); trace(arg3); trace(arg4); } ::ufs_read:entry { trace(arg1); trace(arg2); trace(arg3); } ::ufs_read:return /self->trace == 1/ { trace(arg1); } io::bdev_strategy:start /self->trace/ { trace(args[2]->fi_name); @physical[self->path] = count(); }