coda_opstats.h (171414) | coda_opstats.h (176139) |
---|---|
1/*- | 1/*- |
2 * | 2 * |
3 * Coda: an Experimental Distributed File System 4 * Release 3.1 | 3 * Coda: an Experimental Distributed File System 4 * Release 3.1 |
5 * | 5 * |
6 * Copyright (c) 1987-1998 Carnegie Mellon University 7 * All Rights Reserved | 6 * Copyright (c) 1987-1998 Carnegie Mellon University 7 * All Rights Reserved |
8 * | 8 * |
9 * Permission to use, copy, modify and distribute this software and its 10 * documentation is hereby granted, provided that both the copyright 11 * notice and this permission notice appear in all copies of the 12 * software, derivative works or modified versions, and any portions 13 * thereof, and that both notices appear in supporting documentation, and 14 * that credit is given to Carnegie Mellon University in all documents 15 * and publicity pertaining to direct or indirect use of this code or its 16 * derivatives. | 9 * Permission to use, copy, modify and distribute this software and its 10 * documentation is hereby granted, provided that both the copyright 11 * notice and this permission notice appear in all copies of the 12 * software, derivative works or modified versions, and any portions 13 * thereof, and that both notices appear in supporting documentation, and 14 * that credit is given to Carnegie Mellon University in all documents 15 * and publicity pertaining to direct or indirect use of this code or its 16 * derivatives. |
17 * | 17 * |
18 * CODA IS AN EXPERIMENTAL SOFTWARE SYSTEM AND IS KNOWN TO HAVE BUGS, 19 * SOME OF WHICH MAY HAVE SERIOUS CONSEQUENCES. CARNEGIE MELLON ALLOWS 20 * FREE USE OF THIS SOFTWARE IN ITS "AS IS" CONDITION. CARNEGIE MELLON 21 * DISCLAIMS ANY LIABILITY OF ANY KIND FOR ANY DAMAGES WHATSOEVER 22 * RESULTING DIRECTLY OR INDIRECTLY FROM THE USE OF THIS SOFTWARE OR OF 23 * ANY DERIVATIVE WORK. | 18 * CODA IS AN EXPERIMENTAL SOFTWARE SYSTEM AND IS KNOWN TO HAVE BUGS, 19 * SOME OF WHICH MAY HAVE SERIOUS CONSEQUENCES. CARNEGIE MELLON ALLOWS 20 * FREE USE OF THIS SOFTWARE IN ITS "AS IS" CONDITION. CARNEGIE MELLON 21 * DISCLAIMS ANY LIABILITY OF ANY KIND FOR ANY DAMAGES WHATSOEVER 22 * RESULTING DIRECTLY OR INDIRECTLY FROM THE USE OF THIS SOFTWARE OR OF 23 * ANY DERIVATIVE WORK. |
24 * | 24 * |
25 * Carnegie Mellon encourages users of this software to return any 26 * improvements or extensions that they make, and to grant Carnegie 27 * Mellon the rights to redistribute these changes without encumbrance. | 25 * Carnegie Mellon encourages users of this software to return any 26 * improvements or extensions that they make, and to grant Carnegie 27 * Mellon the rights to redistribute these changes without encumbrance. |
28 * 29 * @(#) src/sys/coda/coda_opstats.h,v 1.1.1.1 1998/08/29 21:14:52 rvb Exp $ 30 * $FreeBSD: head/sys/fs/coda/coda_opstats.h 139745 2005-01-05 23:35:00Z imp $ 31 * | 28 * 29 * @(#) src/sys/coda/coda_opstats.h,v 1.1.1.1 1998/08/29 21:14:52 rvb Exp $ 30 * $FreeBSD: head/sys/fs/coda/coda_opstats.h 176139 2008-02-10 11:18:12Z rwatson $ 31 * |
32 */ 33 | 32 */ 33 |
34#ifndef _CODA_OPSTATS_H_ 35#define _CODA_OPSTATS_H_ 36 |
|
34/* | 37/* |
35 * operation stats: what the minicache can intercept that 36 * *isn't* seen by venus. These stats are kept to augment 37 * the stats maintained by the Volume-Session mechanism. | 38 * Operation stats: what the minicache can intercept that *isn't* seen by 39 * venus. These stats are kept to augment the stats maintained by the 40 * Volume-Session mechanism. |
38 */ 39 | 41 */ 42 |
40/* vfsops: | 43/*- 44 * vfsops: |
41 * mount: not currently bounced to Venus 42 * umount: nope 43 * root: only first call, rest is cached. 44 * statfs: none (bogus) 45 * sync: none (bogus) 46 * vget: all 47 */ | 45 * mount: not currently bounced to Venus 46 * umount: nope 47 * root: only first call, rest is cached. 48 * statfs: none (bogus) 49 * sync: none (bogus) 50 * vget: all 51 */ |
52#define CODA_MOUNT_STATS 0 53#define CODA_UMOUNT_STATS 1 54#define CODA_ROOT_STATS 2 55#define CODA_STATFS_STATS 3 56#define CODA_SYNC_STATS 4 57#define CODA_VGET_STATS 5 58#define CODA_VFSOPS_SIZE 6 |
|
48 | 59 |
49#define CODA_MOUNT_STATS 0 50#define CODA_UMOUNT_STATS 1 51#define CODA_ROOT_STATS 2 52#define CODA_STATFS_STATS 3 53#define CODA_SYNC_STATS 4 54#define CODA_VGET_STATS 5 55#define CODA_VFSOPS_SIZE 6 56 57/* vnodeops: | 60/*- 61 * vnodeops: |
58 * open: all to venus 59 * close: all to venus 60 * rdrw: bogus. Maybe redirected to UFS. 61 * May call open/close for internal opens/closes 62 * (Does exec not call open?) 63 * ioctl: causes a lookupname 64 * passes through 65 * select: can't get there from here. --- 9 unchanged lines hidden (view full) --- 75 * link: passes through 76 * rename: passes through 77 * mkdir: passes through 78 * rmdir: passes through 79 * symlink: passes through 80 * readdir: may be redirected to UFS 81 * may cause an "internal" open/close 82 */ | 62 * open: all to venus 63 * close: all to venus 64 * rdrw: bogus. Maybe redirected to UFS. 65 * May call open/close for internal opens/closes 66 * (Does exec not call open?) 67 * ioctl: causes a lookupname 68 * passes through 69 * select: can't get there from here. --- 9 unchanged lines hidden (view full) --- 79 * link: passes through 80 * rename: passes through 81 * mkdir: passes through 82 * rmdir: passes through 83 * symlink: passes through 84 * readdir: may be redirected to UFS 85 * may cause an "internal" open/close 86 */ |
87#define CODA_OPEN_STATS 0 88#define CODA_CLOSE_STATS 1 89#define CODA_RDWR_STATS 2 90#define CODA_IOCTL_STATS 3 91#define CODA_SELECT_STATS 4 92#define CODA_GETATTR_STATS 5 93#define CODA_SETATTR_STATS 6 94#define CODA_ACCESS_STATS 7 95#define CODA_READLINK_STATS 8 96#define CODA_FSYNC_STATS 9 97#define CODA_INACTIVE_STATS 10 98#define CODA_LOOKUP_STATS 11 99#define CODA_CREATE_STATS 12 100#define CODA_REMOVE_STATS 13 101#define CODA_LINK_STATS 14 102#define CODA_RENAME_STATS 15 103#define CODA_MKDIR_STATS 16 104#define CODA_RMDIR_STATS 17 105#define CODA_SYMLINK_STATS 18 106#define CODA_READDIR_STATS 19 107#define CODA_VNODEOPS_SIZE 20 |
|
83 | 108 |
84#define CODA_OPEN_STATS 0 85#define CODA_CLOSE_STATS 1 86#define CODA_RDWR_STATS 2 87#define CODA_IOCTL_STATS 3 88#define CODA_SELECT_STATS 4 89#define CODA_GETATTR_STATS 5 90#define CODA_SETATTR_STATS 6 91#define CODA_ACCESS_STATS 7 92#define CODA_READLINK_STATS 8 93#define CODA_FSYNC_STATS 9 94#define CODA_INACTIVE_STATS 10 95#define CODA_LOOKUP_STATS 11 96#define CODA_CREATE_STATS 12 97#define CODA_REMOVE_STATS 13 98#define CODA_LINK_STATS 14 99#define CODA_RENAME_STATS 15 100#define CODA_MKDIR_STATS 16 101#define CODA_RMDIR_STATS 17 102#define CODA_SYMLINK_STATS 18 103#define CODA_READDIR_STATS 19 104#define CODA_VNODEOPS_SIZE 20 105 | |
106/* 107 * I propose the following structres: 108 */ | 109/* 110 * I propose the following structres: 111 */ |
109 | |
110struct coda_op_stats { | 112struct coda_op_stats { |
111 int opcode; /* vfs opcode */ 112 long entries; /* number of times call attempted */ 113 long sat_intrn; /* number of times call satisfied by cache */ 114 long unsat_intrn; /* number of times call failed in cache, but 115 was not bounced to venus proper. */ 116 long gen_intrn; /* number of times call generated internally */ 117 /* (do we need that?) */ | 113 int opcode; /* vfs opcode */ 114 long entries; /* number of times call attempted */ 115 long sat_intrn; /* number of times call satisfied by cache */ 116 long unsat_intrn; /* number of times call failed in cache, but */ 117 /* was not bounced to venus proper. */ 118 long gen_intrn; /* number of times call generated internally */ 119 /* (do we need that?) */ |
118}; 119 120/* | 120}; 121 122/* |
121 * With each call to the minicache, we'll bump the counters whenver 122 * a call is satisfied internally (through the cache or through a 123 * redirect), and whenever an operation is caused internally. 124 * Then, we can add the total operations caught by the minicache 125 * to the world-wide totals, and leave a caveat for the specific 126 * graphs later. | 123 * With each call to the minicache, we'll bump the counters whenver a call is 124 * satisfied internally (through the cache or through a redirect), and 125 * whenever an operation is caused internally. Then, we can add the total 126 * operations caught by the minicache to the world-wide totals, and leave a 127 * caveat for the specific graphs later. |
127 */ | 128 */ |
129 130#endif /* !_CODA_OPSTATS_H_ */ |
|