lprocfs_mdt_init_vars(&lvars);
rc = lprocfs_obd_setup(obd, lvars.obd_vars);
if (rc) {
- CERROR("Can't init lprocfs, rc %d\n", rc);
+ CERROR("%s: cannot create proc entries: rc = %d\n",
+ mdt_obd_name(mdt), rc);
+ return rc;
+ }
+
+ rc = hsm_cdt_procfs_init(mdt);
+ if (rc) {
+ CERROR("%s: cannot create hsm proc entries: rc = %d\n",
+ mdt_obd_name(mdt), rc);
return rc;
}
- ptlrpc_lprocfs_register_obd(obd);
obd->obd_proc_exports_entry = proc_mkdir("exports",
obd->obd_proc_entry);
rc = lprocfs_alloc_md_stats(obd, LPROC_MDT_LAST);
if (rc)
return rc;
- mdt_stats_counter_init(obd->md_stats);
+ mdt_stats_counter_init(obd->obd_md_stats);
rc = lprocfs_job_stats_init(obd, LPROC_MDT_LAST,
mdt_stats_counter_init);
{
struct obd_device *obd = mdt2obd_dev(mdt);
- if (obd->obd_proc_exports_entry) {
- lprocfs_remove_proc_entry("clear", obd->obd_proc_exports_entry);
- obd->obd_proc_exports_entry = NULL;
- }
- lprocfs_free_per_client_stats(obd);
- lprocfs_obd_cleanup(obd);
- ptlrpc_lprocfs_unregister_obd(obd);
- lprocfs_free_md_stats(obd);
- lprocfs_free_obd_stats(obd);
+ if (obd->obd_proc_exports_entry != NULL) {
+ lprocfs_remove_proc_entry("clear", obd->obd_proc_exports_entry);
+ obd->obd_proc_exports_entry = NULL;
+ }
+
+ lprocfs_free_per_client_stats(obd);
+ hsm_cdt_procfs_fini(mdt);
+ lprocfs_obd_cleanup(obd);
+ lprocfs_free_md_stats(obd);
+ lprocfs_free_obd_stats(obd);
lprocfs_job_stats_fini(obd);
}
static int lprocfs_rd_capa(char *page, char **start, off_t off,
int count, int *eof, void *data)
{
- struct obd_device *obd = data;
- struct mdt_device *mdt = mdt_dev(obd->obd_lu_dev);
+ struct obd_device *obd = data;
+ struct mdt_device *mdt = mdt_dev(obd->obd_lu_dev);
- return snprintf(page, count, "capability on: %s %s\n",
- mdt->mdt_opts.mo_oss_capa ? "oss" : "",
- mdt->mdt_opts.mo_mds_capa ? "mds" : "");
+ return snprintf(page, count, "capability on: %s %s\n",
+ mdt->mdt_lut.lut_oss_capa ? "oss" : "",
+ mdt->mdt_lut.lut_mds_capa ? "mds" : "");
}
static int lprocfs_wr_capa(struct file *file, const char *buffer,
return -EINVAL;
}
- mdt->mdt_opts.mo_oss_capa = (val & 0x1);
- mdt->mdt_opts.mo_mds_capa = !!(val & 0x2);
+ spin_lock(&mdt->mdt_lut.lut_flags_lock);
+ mdt->mdt_lut.lut_oss_capa = !!(val & 0x1);
+ mdt->mdt_lut.lut_mds_capa = !!(val & 0x2);
+ spin_unlock(&mdt->mdt_lut.lut_flags_lock);
mdt->mdt_capa_conf = 1;
LCONSOLE_INFO("MDS %s %s MDS fid capability.\n",
mdt_obd_name(mdt),
- mdt->mdt_opts.mo_mds_capa ? "enabled" : "disabled");
+ mdt->mdt_lut.lut_mds_capa ? "enabled" : "disabled");
LCONSOLE_INFO("MDS %s %s OSS fid capability.\n",
mdt_obd_name(mdt),
- mdt->mdt_opts.mo_oss_capa ? "enabled" : "disabled");
+ mdt->mdt_lut.lut_oss_capa ? "enabled" : "disabled");
return count;
}
struct obd_device *obd = data;
struct mdt_device *mdt = mdt_dev(obd->obd_lu_dev);
- return snprintf(page, count, "%d\n", mdt->mdt_sec_level);
+ return snprintf(page, count, "%d\n", mdt->mdt_lut.lut_sec_level);
}
static int lprocfs_wr_sec_level(struct file *file, const char *buffer,
return -EINVAL;
}
- mdt->mdt_sec_level = val;
- return count;
+ mdt->mdt_lut.lut_sec_level = val;
+ return count;
}
static int lprocfs_rd_cos(char *page, char **start, off_t off,
if (rc)
return rc;
- if (val < 0 || val > 1)
+ if (val > 1)
return -ERANGE;
mdt->mdt_enable_remote_dir = val;
{
struct obd_export *exp = req->rq_export;
- if (exp->exp_obd && exp->exp_obd->md_stats)
- lprocfs_counter_incr(exp->exp_obd->md_stats, opcode);
+ if (exp->exp_obd && exp->exp_obd->obd_md_stats)
+ lprocfs_counter_incr(exp->exp_obd->obd_md_stats, opcode);
if (exp->exp_nid_stats && exp->exp_nid_stats->nid_stats != NULL)
lprocfs_counter_incr(exp->exp_nid_stats->nid_stats, opcode);
if (exp->exp_obd && exp->exp_obd->u.obt.obt_jobstats.ojs_hash &&