Subversion Repositories shark

Rev

Rev 423 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
423 giacomo 1
/*
2
 * linux/include/linux/sunrpc/stats.h
3
 *
4
 * Client statistics collection for SUN RPC
5
 *
6
 * Copyright (C) 1996 Olaf Kirch <okir@monad.swb.de>
7
 */
8
 
9
#ifndef _LINUX_SUNRPC_STATS_H
10
#define _LINUX_SUNRPC_STATS_H
11
 
12
#include <linux/config.h>
13
#include <linux/proc_fs.h>
14
 
15
struct rpc_stat {
16
        struct rpc_program *    program;
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
 
42
void                    rpc_proc_init(void);
43
void                    rpc_proc_exit(void);
44
#ifdef MODULE
45
void                    rpc_modcount(struct inode *, int);
46
#endif
47
 
48
#ifdef CONFIG_PROC_FS
49
struct proc_dir_entry * rpc_proc_register(struct rpc_stat *);
50
void                    rpc_proc_unregister(const char *);
51
int                     rpc_proc_read(char *, char **, off_t, int,
52
                                        int *, void *);
53
void                    rpc_proc_zero(struct rpc_program *);
54
struct proc_dir_entry * svc_proc_register(struct svc_stat *);
55
void                    svc_proc_unregister(const char *);
56
int                     svc_proc_read(char *, char **, off_t, int,
57
                                        int *, void *);
58
void                    svc_proc_zero(struct svc_program *);
59
 
60
extern struct proc_dir_entry    *proc_net_rpc;
61
 
62
#else
63
 
64
static inline struct proc_dir_entry *rpc_proc_register(struct rpc_stat *s) { return NULL; }
65
static inline void rpc_proc_unregister(const char *p) {}
66
static inline int rpc_proc_read(char *a, char **b, off_t c, int d, int *e, void *f) { return 0; }
67
static inline void rpc_proc_zero(struct rpc_program *p) {}
68
 
69
static inline struct proc_dir_entry *svc_proc_register(struct svc_stat *s) { return NULL; }
70
static inline void svc_proc_unregister(const char *p) {}
71
static inline int svc_proc_read(char *a, char **b, off_t c, int d, int *e, void *f) { return 0; }
72
static inline void svc_proc_zero(struct svc_program *p) {}
73
 
74
#define proc_net_rpc NULL
75
 
76
#endif
77
 
78
#endif /* _LINUX_SUNRPC_STATS_H */