mrc0mmand / rpms / lvm2

Forked from rpms/lvm2 2 years ago
Clone

Blame SOURCES/lvm2-2_02_188-lvconvert-fix-conversion-to-mirrored-mirror-log-with.patch

e1e9d4
 WHATS_NEW            | 5 +++++
e1e9d4
 lib/metadata/merge.c | 3 ++-
e1e9d4
 2 files changed, 7 insertions(+), 1 deletion(-)
e1e9d4
e1e9d4
diff --git a/WHATS_NEW b/WHATS_NEW
e1e9d4
index 80d71ac..846510b 100644
e1e9d4
--- a/WHATS_NEW
e1e9d4
+++ b/WHATS_NEW
e1e9d4
@@ -1,3 +1,8 @@
e1e9d4
+Version 2.02.188 - 
e1e9d4
+==================================
e1e9d4
+  Fix conversion to 'mirrored' mirror log with larger regionsize.
e1e9d4
+  Fix support for lvconvert --repair used by foreign apps (i.e. Docker).
e1e9d4
+
e1e9d4
 Version 2.02.187 - 24th March 2020
e1e9d4
 ==================================
e1e9d4
   Avoid running cache input arg validation when creating vdo pool.
e1e9d4
diff --git a/lib/metadata/merge.c b/lib/metadata/merge.c
e1e9d4
index a024877..054f185 100644
e1e9d4
--- a/lib/metadata/merge.c
e1e9d4
+++ b/lib/metadata/merge.c
e1e9d4
@@ -424,7 +424,8 @@ static void _check_lv_segment(struct logical_volume *lv, struct lv_segment *seg,
e1e9d4
 		if (seg_is_mirror(seg)) {
e1e9d4
 			if (!seg->region_size)
e1e9d4
 				seg_error("region size is zero");
e1e9d4
-			else if (seg->region_size > seg->lv->size)
e1e9d4
+			/* Avoid regionsize check in case of 'mirrored' mirror log or larger than mlog regionsize will fail */
e1e9d4
+			else if (!strstr(seg->lv->name, "_mlog") && (seg->region_size > seg->lv->size))
e1e9d4
 				seg_error("region size is bigger then LV itself");
e1e9d4
 			else if (!is_power_of_2(seg->region_size))
e1e9d4
 				seg_error("region size is non power of 2");