1 /* 2 * linux/include/linux/sunrpc/stats.h 3 * 4 * Client statistics collection for SUN RPC 5 * 6 * Copyright (C) 1996 Olaf Kirch <[email protected]> 7 */ 8 9 #ifndef _LINUX_SUNRPC_STATS_H 10 #define _LINUX_SUNRPC_STATS_H 11 12 #include <linux/proc_fs.h> 13 14 struct rpc_stat { 15 const struct rpc_program *program; 16 17 unsigned int netcnt, 18 netudpcnt, 19 nettcpcnt, 20 nettcpconn, 21 netreconn; 22 unsigned int rpccnt, 23 rpcretrans, 24 rpcauthrefresh, 25 rpcgarbage; 26 }; 27 28 struct svc_stat { 29 struct svc_program * program; 30 31 unsigned int netcnt, 32 netudpcnt, 33 nettcpcnt, 34 nettcpconn; 35 unsigned int rpccnt, 36 rpcbadfmt, 37 rpcbadauth, 38 rpcbadclnt; 39 }; 40 41 struct net; 42 #ifdef CONFIG_PROC_FS 43 int rpc_proc_init(struct net *); 44 void rpc_proc_exit(struct net *); 45 #else 46 static inline int rpc_proc_init(struct net *net) 47 { 48 return 0; 49 } 50 51 static inline void rpc_proc_exit(struct net *net) 52 { 53 } 54 #endif 55 56 #ifdef MODULE 57 void rpc_modcount(struct inode *, int); 58 #endif 59 60 #ifdef CONFIG_PROC_FS 61 struct proc_dir_entry * rpc_proc_register(struct net *,struct rpc_stat *); 62 void rpc_proc_unregister(struct net *,const char *); 63 void rpc_proc_zero(const struct rpc_program *); 64 struct proc_dir_entry * svc_proc_register(struct net *, struct svc_stat *, 65 const struct file_operations *); 66 void svc_proc_unregister(struct net *, const char *); 67 68 void svc_seq_show(struct seq_file *, 69 const struct svc_stat *); 70 #else 71 72 static inline struct proc_dir_entry *rpc_proc_register(struct net *net, struct rpc_stat *s) { return NULL; } 73 static inline void rpc_proc_unregister(struct net *net, const char *p) {} 74 static inline void rpc_proc_zero(const struct rpc_program *p) {} 75 76 static inline struct proc_dir_entry *svc_proc_register(struct net *net, struct svc_stat *s, 77 const struct file_operations *f) { return NULL; } 78 static inline void svc_proc_unregister(struct net *net, const char *p) {} 79 80 static inline void svc_seq_show(struct seq_file *seq, 81 const struct svc_stat *st) {} 82 #endif 83 84 #endif /* _LINUX_SUNRPC_STATS_H */ 85