2005-04-17 02:20:36 +04:00
/*
* Statistics for NFS server .
*
* Copyright ( C ) 1995 , 1996 Olaf Kirch < okir @ monad . swb . de >
*/
2014-05-06 21:37:15 +04:00
# ifndef _NFSD_STATS_H
# define _NFSD_STATS_H
2005-04-17 02:20:36 +04:00
2012-10-09 12:49:02 +04:00
# include <uapi/linux/nfsd/stats.h>
2009-03-26 18:32:47 +03:00
2005-04-17 02:20:36 +04:00
struct nfsd_stats {
unsigned int rchits ; /* repcache hits */
unsigned int rcmisses ; /* repcache hits */
unsigned int rcnocache ; /* uncached reqs */
unsigned int fh_stale ; /* FH stale error */
unsigned int fh_lookup ; /* dentry cached */
unsigned int fh_anon ; /* anon file dentry returned */
unsigned int fh_nocache_dir ; /* filehandle not found in dcache */
unsigned int fh_nocache_nondir ; /* filehandle not found in dcache */
unsigned int io_read ; /* bytes returned to read requests */
unsigned int io_write ; /* bytes passed in write requests */
unsigned int th_cnt ; /* number of available threads */
unsigned int th_usage [ 10 ] ; /* number of ticks during which n perdeciles
* of available threads were in use */
unsigned int th_fullcnt ; /* number of times last free thread was used */
unsigned int ra_size ; /* size of ra cache */
unsigned int ra_depth [ 11 ] ; /* number of times ra entry was found that deep
* in the cache ( 10 percentiles ) . [ 10 ] = not found */
2006-07-10 15:45:44 +04:00
# ifdef CONFIG_NFSD_V4
unsigned int nfs4_opcount [ LAST_NFS4_OP + 1 ] ; /* count of individual nfsv4 operations */
# endif
2005-04-17 02:20:36 +04:00
} ;
extern struct nfsd_stats nfsdstats ;
extern struct svc_stat nfsd_svcstats ;
void nfsd_stat_init ( void ) ;
void nfsd_stat_shutdown ( void ) ;
2014-05-06 21:37:15 +04:00
# endif /* _NFSD_STATS_H */