summaryrefslogtreecommitdiffstats
path: root/tools/vgchange.c
diff options
context:
space:
mode:
authorMike Snitzer <snitzer@redhat.com>2010-01-13 01:50:34 +0000
committerMike Snitzer <snitzer@redhat.com>2010-01-13 01:50:34 +0000
commitdf06d9ac7aa596fd60d01d3098ae0a193eece2ea (patch)
tree6cc9f05e3ada13127d49da266ba8553130fcf9a7 /tools/vgchange.c
parenta0be44c727648bcfff45f9214ff6bbcf029d5053 (diff)
downloadlvm2-df06d9ac7aa596fd60d01d3098ae0a193eece2ea.tar.gz
lvm2-df06d9ac7aa596fd60d01d3098ae0a193eece2ea.tar.xz
lvm2-df06d9ac7aa596fd60d01d3098ae0a193eece2ea.zip
Start background polling of merging stores on:
- lvchange -ay or vgchange -ay. - lvchange --refresh or vgchange --refresh.
Diffstat (limited to 'tools/vgchange.c')
-rw-r--r--tools/vgchange.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/tools/vgchange.c b/tools/vgchange.c
index e425f14c..6a3420af 100644
--- a/tools/vgchange.c
+++ b/tools/vgchange.c
@@ -68,12 +68,12 @@ static int _poll_lvs_in_vg(struct cmd_context *cmd,
else
lv_active = info.exists;
- if (!lv_active ||
- !(lv->status & (PVMOVE|CONVERTING)))
- continue;
-
- lv_spawn_background_polling(cmd, lv);
- count++;
+ if (lv_active &&
+ (lv->status & (PVMOVE|CONVERTING) ||
+ lv->merging_snapshot)) {
+ lv_spawn_background_polling(cmd, lv);
+ count++;
+ }
}
/*
@@ -140,7 +140,8 @@ static int _activate_lvs_in_vg(struct cmd_context *cmd,
if (background_polling() &&
activate != CHANGE_AN && activate != CHANGE_ALN &&
- (lv->status & (PVMOVE|CONVERTING)))
+ (lv->status & (PVMOVE|CONVERTING) ||
+ lv->merging_snapshot))
lv_spawn_background_polling(cmd, lv);
count++;