[lvm-devel] [PATCH] Do not print "-1" as locking type if locking fails.

Milan Broz mbroz at redhat.com
Thu Jan 21 16:37:45 UTC 2010


Move error message to locking constructor and print
more descriptive message if locking fails instead of
"Locking type -1 initialisation failed."
---
 lib/locking/locking.c |   16 ++++++++++++----
 liblvm/lvm_base.c     |    1 -
 tools/lvmcmdline.c    |    2 --
 3 files changed, 12 insertions(+), 7 deletions(-)

diff --git a/lib/locking/locking.c b/lib/locking/locking.c
index a2c6a3e..54e5e25 100644
--- a/lib/locking/locking.c
+++ b/lib/locking/locking.c
@@ -224,7 +224,7 @@ int init_locking(int type, struct cmd_context *cmd)
 
 	_blocking_supported = find_config_tree_int(cmd,
 	    "global/wait_for_locks", DEFAULT_WAIT_FOR_LOCKS);
-	
+
 	switch (type) {
 	case 0:
 		init_no_locking(&_locking, cmd);
@@ -236,8 +236,10 @@ int init_locking(int type, struct cmd_context *cmd)
 		log_very_verbose("%sFile-based locking selected.",
 				 _blocking_supported ? "" : "Non-blocking ");
 
-		if (!init_file_locking(&_locking, cmd))
+		if (!init_file_locking(&_locking, cmd)) {
+			log_error("File-based locking initialisation failed.");
 			break;
+		}
 		return 1;
 
 #ifdef HAVE_LIBDL
@@ -249,8 +251,10 @@ int init_locking(int type, struct cmd_context *cmd)
 		}
 		if (!find_config_tree_int(cmd, "locking/fallback_to_clustered_locking",
 			    find_config_tree_int(cmd, "global/fallback_to_clustered_locking",
-						 DEFAULT_FALLBACK_TO_CLUSTERED_LOCKING)))
+						 DEFAULT_FALLBACK_TO_CLUSTERED_LOCKING))) {
+			log_error("External locking initialisation failed.");
 			break;
+		}
 #endif
 
 #ifdef CLUSTER_LOCKING_INTERNAL
@@ -259,8 +263,10 @@ int init_locking(int type, struct cmd_context *cmd)
 
 	case 3:
 		log_very_verbose("Cluster locking selected.");
-		if (!init_cluster_locking(&_locking, cmd))
+		if (!init_cluster_locking(&_locking, cmd)) {
+			log_error("Internal cluster locking initialisation failed.");
 			break;
+		}
 		return 1;
 #endif
 
@@ -285,6 +291,8 @@ int init_locking(int type, struct cmd_context *cmd)
 			  "be inaccessible.");
 		if (init_file_locking(&_locking, cmd))
 			return 1;
+		else
+			log_error("File-based locking initialisation failed.");
 	}
 
 	if (!ignorelockingfailure())
diff --git a/liblvm/lvm_base.c b/liblvm/lvm_base.c
index b4be906..ac94692 100644
--- a/liblvm/lvm_base.c
+++ b/liblvm/lvm_base.c
@@ -51,7 +51,6 @@ lvm_t lvm_init(const char *system_dir)
 	/* initialize locking */
 	if (!init_locking(-1, cmd)) {
 		/* FIXME: use EAGAIN as error code here */
-		log_error("Locking initialisation failed.");
 		lvm_quit((lvm_t) cmd);
 		return NULL;
 	}
diff --git a/tools/lvmcmdline.c b/tools/lvmcmdline.c
index e4b56da..ad1513d 100644
--- a/tools/lvmcmdline.c
+++ b/tools/lvmcmdline.c
@@ -1027,8 +1027,6 @@ int lvm_run_command(struct cmd_context *cmd, int argc, char **argv)
 		locking_type = -1;
 
 	if (!init_locking(locking_type, cmd)) {
-		log_error("Locking type %d initialisation failed.",
-			  locking_type);
 		ret = ECMD_FAILED;
 		goto out;
 	}
-- 
1.6.6




More information about the lvm-devel mailing list