1*206fef1cSDavid du Colombier struct Cfsmsg { 2*206fef1cSDavid du Colombier ulong n; /* number of messages (of some type) */ 3*206fef1cSDavid du Colombier vlong t; /* time spent in these messages */ 4*206fef1cSDavid du Colombier vlong s; /* start time of last call */ 5*206fef1cSDavid du Colombier }; 6*206fef1cSDavid du Colombier 7*206fef1cSDavid du Colombier struct Cfsstat { 8*206fef1cSDavid du Colombier struct Cfsmsg cm[128]; /* client messages */ 9*206fef1cSDavid du Colombier struct Cfsmsg sm[128]; /* server messages */ 10*206fef1cSDavid du Colombier 11*206fef1cSDavid du Colombier ulong ndirread; /* # of directory read ops */ 12*206fef1cSDavid du Colombier ulong ndelegateread; /* # of read ops delegated */ 13*206fef1cSDavid du Colombier ulong ninsert; /* # of cache insert ops */ 14*206fef1cSDavid du Colombier ulong ndelete; /* # of cache delete ops */ 15*206fef1cSDavid du Colombier ulong nupdate; /* # of cache update ops */ 16*206fef1cSDavid du Colombier 17*206fef1cSDavid du Colombier uvlong bytesread; /* # of bytes read by client */ 18*206fef1cSDavid du Colombier uvlong byteswritten; /* # of bytes written by client */ 19*206fef1cSDavid du Colombier uvlong bytesfromserver; /* # of bytes read from server */ 20*206fef1cSDavid du Colombier uvlong bytesfromdirs; /* # of directory bytes read from server */ 21*206fef1cSDavid du Colombier uvlong bytesfromcache; /* # of bytes read from cache */ 22*206fef1cSDavid du Colombier uvlong bytestocache; /* # of bytes written to cache */ 23*206fef1cSDavid du Colombier }; 24*206fef1cSDavid du Colombier 25*206fef1cSDavid du Colombier extern struct Cfsstat cfsstat, cfsprev; 26*206fef1cSDavid du Colombier extern int statson; 27