From 7b0b7b33b052fbd3a5b0cafd8dc134ce2ce713ec Mon Sep 17 00:00:00 2001 From: David Teigland Date: Thu, 16 Aug 2012 15:41:12 -0500 Subject: [PATCH 3/3] dlm_controld: remove fence_all from cli The fence_all (and unfence_all) options were allowed as cli options, and as a fence config. This made parsing dlm.conf ambiguous because cli options in dlm.conf have x=y syntax, which is not the same as the fence config syntax. Remove the cli option because the config file will be more common/useful. Signed-off-by: David Teigland --- dlm_controld/daemon_cpg.c | 11 ++--------- dlm_controld/dlm.conf.5 | 4 ---- dlm_controld/dlm_daemon.h | 2 -- dlm_controld/fence.c | 2 +- dlm_controld/main.c | 14 ++------------ 5 files changed, 5 insertions(+), 28 deletions(-) diff --git a/dlm_controld/daemon_cpg.c b/dlm_controld/daemon_cpg.c index fee0ef6..61d2da2 100644 --- a/dlm_controld/daemon_cpg.c +++ b/dlm_controld/daemon_cpg.c @@ -455,20 +455,13 @@ static struct node_daemon *add_node_daemon(int nodeid) fc = &node->fence_config; fc->nodeid = nodeid; - /* explicit command line arg has first priority */ - - if (dlm_options[fence_all_ind].cli_set) { - fc->dev[0] = &fence_all_device; - goto out; - } - - /* explicit config file setting has second priority */ + /* explicit config file setting */ rv = fence_config_init(fc, (unsigned int)nodeid, (char *)CONF_FILE_PATH); if (!rv) goto out; - /* no command line, no config file, so use default */ + /* no config file setting, so use default */ if (rv == -ENOENT) { fc->dev[0] = &fence_all_device; diff --git a/dlm_controld/dlm.conf.5 b/dlm_controld/dlm.conf.5 index d722de7..95f74b9 100644 --- a/dlm_controld/dlm.conf.5 +++ b/dlm_controld/dlm.conf.5 @@ -65,10 +65,6 @@ enable_quorum_fencing .br enable_quorum_lockspace .br -fence_all -.br -unfence_all -.br .SH Fencing diff --git a/dlm_controld/dlm_daemon.h b/dlm_controld/dlm_daemon.h index 7cb3c01..ffd501c 100644 --- a/dlm_controld/dlm_daemon.h +++ b/dlm_controld/dlm_daemon.h @@ -107,8 +107,6 @@ enum { enable_startup_fencing_ind, enable_quorum_fencing_ind, enable_quorum_lockspace_ind, - fence_all_ind, - unfence_all_ind, help_ind, version_ind, dlm_options_max, diff --git a/dlm_controld/fence.c b/dlm_controld/fence.c index e53f840..0094b3a 100644 --- a/dlm_controld/fence.c +++ b/dlm_controld/fence.c @@ -194,7 +194,7 @@ int unfence_node(int nodeid) } if (rv < 0) { /* there's a problem with the config */ - log_error("fence config %d error %d", nodeid, rv); + log_error("unfence %d fence_config_init error %d", nodeid, rv); return rv; } diff --git a/dlm_controld/main.c b/dlm_controld/main.c index c002520..6eafa49 100644 --- a/dlm_controld/main.c +++ b/dlm_controld/main.c @@ -1335,16 +1335,6 @@ static void set_opt_defaults(void) 1, NULL, "enable/disable quorum requirement for lockspace operations"); - set_opt_default(fence_all_ind, - "fence_all", '\0', req_arg_str, - -1, "dlm_stonith", - "fence all nodes with this agent"); - - set_opt_default(unfence_all_ind, - "unfence_all", '\0', no_arg, - 0, NULL, - "enable unfencing self with fence_all agent"); - set_opt_default(help_ind, "help", 'h', no_arg, -1, NULL, @@ -1565,8 +1555,8 @@ int main(int argc, char **argv) set_opt_file(0); strcpy(fence_all_device.name, "fence_all"); - strcpy(fence_all_device.agent, opts(fence_all_ind)); - fence_all_device.unfence = opt(unfence_all_ind); + strcpy(fence_all_device.agent, "dlm_stonith"); + fence_all_device.unfence = 0; INIT_LIST_HEAD(&lockspaces); INIT_LIST_HEAD(&fs_register_list); -- 1.7.10.1.362.g242cab3