stats.h 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. /*
  2. * linux/include/linux/nfsd/stats.h
  3. *
  4. * Statistics for NFS server.
  5. *
  6. * Copyright (C) 1995, 1996 Olaf Kirch <okir@monad.swb.de>
  7. */
  8. #ifndef LINUX_NFSD_STATS_H
  9. #define LINUX_NFSD_STATS_H
  10. #include <linux/nfs4.h>
  11. struct nfsd_stats {
  12. unsigned int rchits; /* repcache hits */
  13. unsigned int rcmisses; /* repcache hits */
  14. unsigned int rcnocache; /* uncached reqs */
  15. unsigned int fh_stale; /* FH stale error */
  16. unsigned int fh_lookup; /* dentry cached */
  17. unsigned int fh_anon; /* anon file dentry returned */
  18. unsigned int fh_nocache_dir; /* filehandle not found in dcache */
  19. unsigned int fh_nocache_nondir; /* filehandle not found in dcache */
  20. unsigned int io_read; /* bytes returned to read requests */
  21. unsigned int io_write; /* bytes passed in write requests */
  22. unsigned int th_cnt; /* number of available threads */
  23. unsigned int th_usage[10]; /* number of ticks during which n perdeciles
  24. * of available threads were in use */
  25. unsigned int th_fullcnt; /* number of times last free thread was used */
  26. unsigned int ra_size; /* size of ra cache */
  27. unsigned int ra_depth[11]; /* number of times ra entry was found that deep
  28. * in the cache (10percentiles). [10] = not found */
  29. #ifdef CONFIG_NFSD_V4
  30. unsigned int nfs4_opcount[LAST_NFS4_OP + 1]; /* count of individual nfsv4 operations */
  31. #endif
  32. };
  33. /* thread usage wraps very million seconds (approx one fortnight) */
  34. #define NFSD_USAGE_WRAP (HZ*1000000)
  35. #ifdef __KERNEL__
  36. extern struct nfsd_stats nfsdstats;
  37. extern struct svc_stat nfsd_svcstats;
  38. void nfsd_stat_init(void);
  39. void nfsd_stat_shutdown(void);
  40. #endif /* __KERNEL__ */
  41. #endif /* LINUX_NFSD_STATS_H */