-int rd_conn_uuid(char* page, char **start, off_t off,
- int count, int *eof, void *data)
-{
- struct obd_device* temp=(struct obd_device*)data;
- struct client_obd* cli=&temp->u.cli;
- struct obd_import* imp=&cli->cl_import;
- int len=0;
- len+=snprintf(page, count, "%s\n",imp->imp_connection->c_remote_uuid);
- return len;
-}
-
-int rd_server_uuid(char* page, char **start, off_t off,
- int count, int *eof, void *data)
-{
- struct obd_device* temp=(struct obd_device*)data;
- struct client_obd* cli=&temp->u.cli;
- int len=0;
- len+=snprintf(page, count, "%s\n",cli->cl_target_uuid);
- return len;
-}
-
-int rd_server_name(char* page, char **start, off_t off,
- int count, int *eof, void *data)
-{
- return 0;
-
-}
-
-struct lprocfs_vars status_var_nm_1[]={
- {"status/uuid", rd_uuid, 0},
- {"status/blocksize",rd_blksize, 0},
- {"status/kbytestotal",rd_kbtotal, 0},
- {"status/kbytesfree", rd_kbfree, 0},
- {"status/files", rd_files, 0},
- {"status/filesfree", rd_filesfree, 0},
- {"status/filegroups", rd_filegroups, 0},
- {"status/server_uuid", rd_server_uuid, 0},
- {"status/conn_uuid", rd_conn_uuid, 0},
- {0}
-};
-int rd_numdevices(char* page, char **start, off_t off,
- int count, int *eof, void *data)
-{
- struct obd_type* class=(struct obd_type*)data;
- int len=0;
- len+=snprintf(page, count, "%d\n", class->typ_refcnt);
- return len;
-}
-
-struct lprocfs_vars status_class_var[]={
- {"status/num_devices", rd_numdevices, 0},
- {0}
+LPROC_SEQ_FOPS_RO(mdc_obd_max_pages_per_rpc);
+
+LPROC_SEQ_FOPS_RW_TYPE(mdc, import);
+LPROC_SEQ_FOPS_RW_TYPE(mdc, pinger_recov);
+
+struct lprocfs_seq_vars lprocfs_mdc_obd_vars[] = {
+ { .name = "uuid",
+ .fops = &mdc_uuid_fops },
+ { .name = "ping",
+ .fops = &mdc_ping_fops,
+ .proc_mode = 0222 },
+ { .name = "connect_flags",
+ .fops = &mdc_connect_flags_fops },
+ { .name = "blocksize",
+ .fops = &mdc_blksize_fops },
+ { .name = "kbytestotal",
+ .fops = &mdc_kbytestotal_fops },
+ { .name = "kbytesfree",
+ .fops = &mdc_kbytesfree_fops },
+ { .name = "kbytesavail",
+ .fops = &mdc_kbytesavail_fops },
+ { .name = "filestotal",
+ .fops = &mdc_filestotal_fops },
+ { .name = "filesfree",
+ .fops = &mdc_filesfree_fops },
+ { .name = "mds_server_uuid",
+ .fops = &mdc_server_uuid_fops },
+ { .name = "mds_conn_uuid",
+ .fops = &mdc_conn_uuid_fops },
+ /*
+ * FIXME: below proc entry is provided, but not in used, instead
+ * sbi->sb_md_brw_size is used, the per obd variable should be used
+ * when CMD is enabled, and dir pages are managed in MDC layer.
+ * Remember to enable proc write function.
+ */
+ { .name = "max_pages_per_rpc",
+ .fops = &mdc_obd_max_pages_per_rpc_fops },
+ { .name = "max_rpcs_in_flight",
+ .fops = &mdc_max_rpcs_in_flight_fops },
+ { .name = "timeouts",
+ .fops = &mdc_timeouts_fops },
+ { .name = "import",
+ .fops = &mdc_import_fops },
+ { .name = "state",
+ .fops = &mdc_state_fops },
+ { .name = "pinger_recov",
+ .fops = &mdc_pinger_recov_fops },
+ { NULL }