summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorMilan Broz <mbroz@redhat.com>2012-03-26 20:33:40 +0000
committerMilan Broz <mbroz@redhat.com>2012-03-26 20:33:40 +0000
commitddb31b62e5cdecd5b44176a5def6d1f0408a9e00 (patch)
tree93dfea97541b068575656088215b2813b2e39c8a /lib
parentdcd90bc501677849ee50b430ea956be7392dffae (diff)
downloadlvm2-ddb31b62e5cdecd5b44176a5def6d1f0408a9e00.tar.gz
lvm2-ddb31b62e5cdecd5b44176a5def6d1f0408a9e00.tar.xz
lvm2-ddb31b62e5cdecd5b44176a5def6d1f0408a9e00.zip
Keep exclusive activation in pvmove if LV is already active.
Pvmove should never try to downgrade exclusive lock for LVs. This allows pvmove to work again for exclusive activated LVs.
Diffstat (limited to 'lib')
-rw-r--r--lib/locking/locking.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/locking/locking.c b/lib/locking/locking.c
index 1b4e0ac5..228078a2 100644
--- a/lib/locking/locking.c
+++ b/lib/locking/locking.c
@@ -574,7 +574,7 @@ int activate_lvs(struct cmd_context *cmd, struct dm_list *lvs, unsigned exclusiv
struct lv_list *lvl;
dm_list_iterate_items(lvl, lvs) {
- if (!exclusive) {
+ if (!exclusive && !lv_is_active_exclusive(lvl->lv)) {
if (!activate_lv(cmd, lvl->lv)) {
log_error("Failed to activate %s", lvl->lv->name);
return 0;