summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlasdair G Kergon <agk@redhat.com>2015-12-03 14:40:14 +0000
committerAlasdair G Kergon <agk@redhat.com>2015-12-03 14:40:14 +0000
commitaec58c862064e2b9dd5b0ebb54473340ebd97f7f (patch)
tree3ed4a37d9ab0631c8f816506d52e265d0f337e78
parent3bbf89e9ec92388cbfa722c0fbb6ff3fad0232aa (diff)
downloadlvm2-aec58c862064e2b9dd5b0ebb54473340ebd97f7f.tar.gz
lvconvert: Reinstate mirror to raid conversions.
Reinstate conversions from mirror to raid stopped by commit 46c8d6bb8ae91ee67c8633496cc6c3d92bb4f3ce (lvconvert: Improve message for raid without -m).
-rw-r--r--tools/lvconvert.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/tools/lvconvert.c b/tools/lvconvert.c
index b309b9e80..82b804f5c 100644
--- a/tools/lvconvert.c
+++ b/tools/lvconvert.c
@@ -242,9 +242,9 @@ static int _check_conversion_type(struct cmd_context *cmd, const char *type_str)
if (!type_str || !*type_str)
return 1;
- if (!strcmp(type_str, "mirror") || !strncmp(type_str, "raid", 4)) {
+ if (!strcmp(type_str, "mirror")) {
if (!arg_count(cmd, mirrors_ARG)) {
- log_error("Mirror and raid conversions require -m/--mirrors");
+ log_error("Conversions to --type mirror require -m/--mirrors");
return 0;
}
return 1;
@@ -1734,6 +1734,11 @@ static int _lvconvert_raid(struct logical_volume *lv, struct lvconvert_params *l
return 0;
}
+ if (seg_is_linear(seg) && !arg_count(cmd, mirrors_ARG)) {
+ log_error("Raid conversions require -m/--mirrors");
+ return 0;
+ }
+
/* Change number of RAID1 images */
if (arg_count(cmd, mirrors_ARG) || arg_count(cmd, splitmirrors_ARG)) {
image_count = lv_raid_image_count(lv);