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