summaryrefslogtreecommitdiffstats
path: root/tools/vgchange.c
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 /tools/vgchange.c
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).
Diffstat (limited to 'tools/vgchange.c')
-rw-r--r--tools/vgchange.c3
1 files changed, 3 insertions, 0 deletions
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;