From: Vladimir Saveliev Date: Mon, 5 Jan 2015 15:01:53 +0000 (-0500) Subject: LU-5997 mdd: initialize mdd's obd->obd_vars X-Git-Tag: 2.6.93~5 X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=commitdiff_plain;h=95bf473ced0ef87c565d1d972e5ed0d8771cfbcd LU-5997 mdd: initialize mdd's obd->obd_vars mdd_procfs_init() initializes obd->obd_vars of not mdd's obd, but mdt's one. Having mdd's obd->obd_vars uninitialized leads conf_param to fail on setting mdd' parametes. Xyratex-bug-id: MRP-2277 Signed-off-by: Vladimir Saveliev Change-Id: I065dc9e4577816ce08f22787116fae4f7e971db5 Reviewed-on: http://review.whamcloud.com/12980 Tested-by: Jenkins Tested-by: Maloo Reviewed-by: James Simmons Reviewed-by: Bob Glossman Reviewed-by: Oleg Drokin --- diff --git a/lustre/mdd/mdd_device.c b/lustre/mdd/mdd_device.c index d2d007f..71e5d13 100644 --- a/lustre/mdd/mdd_device.c +++ b/lustre/mdd/mdd_device.c @@ -119,14 +119,22 @@ out: static int mdd_init0(const struct lu_env *env, struct mdd_device *mdd, struct lu_device_type *t, struct lustre_cfg *lcfg) { - int rc; + int rc = -EINVAL; + const char *dev; ENTRY; + dev = lustre_cfg_string(lcfg, 0); + if (dev == NULL) + RETURN(rc); + + mdd->mdd_md_dev.md_lu_dev.ld_obd = class_name2obd(dev); + if (mdd->mdd_md_dev.md_lu_dev.ld_obd == NULL) + RETURN(rc); mdd->mdd_md_dev.md_lu_dev.ld_ops = &mdd_lu_ops; mdd->mdd_md_dev.md_ops = &mdd_ops; rc = mdd_connect_to_next(env, mdd, lustre_cfg_string(lcfg, 3)); - if (rc) + if (rc != 0) RETURN(rc); mdd->mdd_atime_diff = MAX_ATIME_DIFF; diff --git a/lustre/mdd/mdd_lproc.c b/lustre/mdd/mdd_lproc.c index d9174ac..7bf5e33 100644 --- a/lustre/mdd/mdd_lproc.c +++ b/lustre/mdd/mdd_lproc.c @@ -298,7 +298,7 @@ static struct lprocfs_vars lprocfs_mdd_obd_vars[] = { int mdd_procfs_init(struct mdd_device *mdd, const char *name) { - struct obd_device *obd = class_name2obd(name); + struct obd_device *obd = mdd2obd_dev(mdd); struct obd_type *type; int rc; ENTRY; diff --git a/lustre/tests/conf-sanity.sh b/lustre/tests/conf-sanity.sh index b88859d..60475ea 100644 --- a/lustre/tests/conf-sanity.sh +++ b/lustre/tests/conf-sanity.sh @@ -1833,6 +1833,10 @@ t32_test() { error_noexit "Setting \"lov.stripesize\"" return 1 } + $r $LCTL conf_param $fsname-MDT0000.mdd.atime_diff=70 || { + error_noexit "Setting \"mdd.atime_diff\"" + return 1 + } if [ "$ff_convert" != "no" -a $(facet_fstype ost1) == "ldiskfs" ]; then $r $LCTL lfsck_start -M $fsname-OST0000 || {