[LU-2308] class_process_config() prints confusing warnings, is confusing Created: 09/Nov/12 Updated: 25/Apr/14 Resolved: 28/Oct/13 |
|
| Status: | Resolved |
| Project: | Lustre |
| Component/s: | None |
| Affects Version/s: | Lustre 2.2.0, Lustre 2.3.0, Lustre 2.4.0, Lustre 2.1.3 |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Minor |
| Reporter: | John Hammond | Assignee: | John Hammond |
| Resolution: | Duplicate | Votes: | 0 |
| Labels: | None | ||
| Issue Links: |
|
||||||||||||
| Severity: | 3 | ||||||||||||
| Rank (Obsolete): | 5521 | ||||||||||||
| Description |
|
If class_process_config() does not recognize a configuration parameter it warns about "ignoring" an unknown parameter then causes mount to fail. However, if something is causing mount to fail then it's not really being ignored. class_process_config()
case LCFG_PARAM: {
char *tmp;
/* llite has no obd */
if ((class_match_param(lustre_cfg_string(lcfg, 1),
PARAM_LLITE, 0) == 0) &&
client_process_config) {
err = (*client_process_config)(lcfg);
GOTO(out, err);
} else if ((class_match_param(lustre_cfg_string(lcfg, 1),
PARAM_SYS, &tmp) == 0)) {
/* Global param settings */
err = class_set_global(tmp, lcfg->lcfg_num, lcfg);
/* Note that since LCFG_PARAM is LCFG_REQUIRED, new \
unknown globals would cause config to fail */
if (err)
CWARN("Ignoring unknown param %s\n", tmp);
GOTO(out, 0);
} else if ((class_match_param(lustre_cfg_string(lcfg, 1),
PARAM_QUOTA, &tmp) == 0) &&
quota_process_config) {
err = (*quota_process_config)(lcfg);
GOTO(out, err);
}
/* Fall through */
break;
}
I like how the "GOTO(out, 0);" makes me think, well maybe it /is/ ignoring the unknown param. But it's not. |
| Comments |
| Comment by Andreas Dilger [ 10/Nov/12 ] |
|
I agree that this is a problem. There are a couple of other bugs related to this problem as well. I think it makes sense to ignore unknown configuration parameters. |
| Comment by John Hammond [ 13/Nov/12 ] |
|
Patch tracking at http://review.whamcloud.com/#change,4504. |
| Comment by Peter Jones [ 28/Oct/13 ] |
|
Fix tracked under |