summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMilan Broz <mbroz@redhat.com>2009-11-18 17:20:18 +0000
committerMilan Broz <mbroz@redhat.com>2009-11-18 17:20:18 +0000
commitb9ac4b0cf8a2dbdef1aa8cb18b8f06a67654215c (patch)
tree043a4294d98b352fd606f1e4b4458b1262b45ee6
parent20babc7b4ffd6891d176badad372951271062c43 (diff)
downloadlvm2-b9ac4b0cf8a2dbdef1aa8cb18b8f06a67654215c.tar.gz
lvm2-b9ac4b0cf8a2dbdef1aa8cb18b8f06a67654215c.tar.xz
lvm2-b9ac4b0cf8a2dbdef1aa8cb18b8f06a67654215c.zip
Never activate hidden volumes directly in vgchange.
All hidden (not visible) volumes should be activated through other visible volumes. (There are already exceptions like snapshot, mirror log and image, which should be cleaned one day...) This solves problems for future types of hidden volumes, which can have special meaning and must not be activated implicitly (e.g. key store volume).
-rw-r--r--WHATS_NEW1
-rw-r--r--tools/vgchange.c3
2 files changed, 4 insertions, 0 deletions
diff --git a/WHATS_NEW b/WHATS_NEW
index 30e26d90..4a7ac90d 100644
--- a/WHATS_NEW
+++ b/WHATS_NEW
@@ -1,5 +1,6 @@
Version 2.02.55 -
===================================
+ Do not activate directly not visible volumes in vgchange.
Fix pvmove region_size oveflow for very large PVs.
Fix lvcreate and lvresize processing of %PVS argument.
Tidy some uses of arg_count and introduce arg_is_set.
diff --git a/tools/vgchange.c b/tools/vgchange.c
index d6af3b00..80ac6e73 100644
--- a/tools/vgchange.c
+++ b/tools/vgchange.c
@@ -61,6 +61,9 @@ static int _activate_lvs_in_vg(struct cmd_context *cmd,
dm_list_iterate_items(lvl, &vg->lvs) {
lv = lvl->lv;
+ if (!lv_is_visible(lv))
+ continue;
+
/* Only request activation of snapshot origin devices */
if ((lv->status & SNAPSHOT) || lv_is_cow(lv))
continue;