1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36#define DEBUG_SUBSYSTEM S_CLASS
37
38#include <linux/vfs.h>
39#include "../include/obd_class.h"
40#include "../include/lprocfs_status.h"
41#include "mgc_internal.h"
42
43LPROC_SEQ_FOPS_RO_TYPE(mgc, uuid);
44LPROC_SEQ_FOPS_RO_TYPE(mgc, connect_flags);
45LPROC_SEQ_FOPS_RO_TYPE(mgc, server_uuid);
46LPROC_SEQ_FOPS_RO_TYPE(mgc, conn_uuid);
47LPROC_SEQ_FOPS_RO_TYPE(mgc, import);
48LPROC_SEQ_FOPS_RO_TYPE(mgc, state);
49
50LPROC_SEQ_FOPS_WR_ONLY(mgc, ping);
51
52static int mgc_ir_state_seq_show(struct seq_file *m, void *v)
53{
54 return lprocfs_mgc_rd_ir_state(m, m->private);
55}
56LPROC_SEQ_FOPS_RO(mgc_ir_state);
57
58static struct lprocfs_vars lprocfs_mgc_obd_vars[] = {
59 { "uuid", &mgc_uuid_fops, NULL, 0 },
60 { "ping", &mgc_ping_fops, NULL, 0222 },
61 { "connect_flags", &mgc_connect_flags_fops, NULL, 0 },
62 { "mgs_server_uuid", &mgc_server_uuid_fops, NULL, 0 },
63 { "mgs_conn_uuid", &mgc_conn_uuid_fops, NULL, 0 },
64 { "import", &mgc_import_fops, NULL, 0 },
65 { "state", &mgc_state_fops, NULL, 0 },
66 { "ir_state", &mgc_ir_state_fops, NULL, 0 },
67 { NULL }
68};
69
70LPROC_SEQ_FOPS_RO_TYPE(mgc, numrefs);
71static struct lprocfs_vars lprocfs_mgc_module_vars[] = {
72 { "num_refs", &mgc_numrefs_fops, NULL, 0 },
73 { NULL }
74};
75
76void lprocfs_mgc_init_vars(struct lprocfs_static_vars *lvars)
77{
78 lvars->module_vars = lprocfs_mgc_module_vars;
79 lvars->obd_vars = lprocfs_mgc_obd_vars;
80}
81