mirror of
git://sourceware.org/git/lvm2.git
synced 2025-03-10 16:58:47 +03:00
Move error message to locking constructor and print
more descriptive message if locking fails instead of "Locking type -1 initialisation failed." Use read-only locking instead of misleading ignorelocking option in message.
This commit is contained in:
parent
59dd86581a
commit
98d85f25be
@ -1,5 +1,6 @@
|
||||
Version 2.02.60
|
||||
===================================
|
||||
Fix failed locking messages to be more descriptive.
|
||||
|
||||
Version 2.02.59 - 21st January 2010
|
||||
===================================
|
||||
|
@ -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())
|
||||
|
@ -72,7 +72,7 @@ static int _readonly_lock_resource(struct cmd_context *cmd,
|
||||
(flags & LCK_SCOPE_MASK) == LCK_VG &&
|
||||
!(flags & LCK_CACHE) &&
|
||||
strcmp(resource, VG_GLOBAL)) {
|
||||
log_error("Write locks are prohibited with --ignorelockingfailure.");
|
||||
log_error("Write locks are prohibited with read-only locking.");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -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;
|
||||
}
|
||||
|
@ -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;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user