[lvm-devel] master - mirror: preserve MIRRORED status for temporara image

Zdenek Kabelac zkabelac at fedoraproject.org
Wed Nov 23 16:55:45 UTC 2016


Gitweb:        http://git.fedorahosted.org/git/?p=lvm2.git;a=commitdiff;h=0ad95b77d0f3eb38bc678bf15ecb899e109287cc
Commit:        0ad95b77d0f3eb38bc678bf15ecb899e109287cc
Parent:        851095a6af7a5a1343d9eb2aa8a5c9e08f9759b3
Author:        Zdenek Kabelac <zkabelac at redhat.com>
AuthorDate:    Wed Nov 23 17:11:26 2016 +0100
Committer:     Zdenek Kabelac <zkabelac at redhat.com>
CommitterDate: Wed Nov 23 17:47:58 2016 +0100

mirror: preserve MIRRORED status for temporara image

When lvconvert adds a new leg - it's doing it free 'temporary' image
layer - however this temporary 'internal' mirror is also MIRRORED LV.
But the status bit was not properly transfered through layer.
---
 WHATS_NEW             |    1 +
 lib/metadata/mirror.c |    4 +++-
 2 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/WHATS_NEW b/WHATS_NEW
index b7a5e82..40a9ef4 100644
--- a/WHATS_NEW
+++ b/WHATS_NEW
@@ -1,5 +1,6 @@
 Version 2.02.168 - 
 ====================================
+  Preserve mirrored status for temporary layered mirrors.
   Use transient raid check before repairing raid volume.
   Implement transient status check for raid volumes.
   Only log msg as debug if lvm2-lvmdbusd unit missing for D-Bus notification.
diff --git a/lib/metadata/mirror.c b/lib/metadata/mirror.c
index da7be6c..feb78a5 100644
--- a/lib/metadata/mirror.c
+++ b/lib/metadata/mirror.c
@@ -1883,7 +1883,9 @@ static int _form_mirror(struct cmd_context *cmd, struct alloc_handle *ah,
 		return_0;
 
 	if (!lv_add_mirror_lvs(lv, img_lvs, mirrors,
-			       MIRROR_IMAGE | (lv->status & LOCKED),
+			       /* Pass through MIRRORED & LOCKED status flag
+				* TODO: Any other would be needed ?? */
+			       MIRROR_IMAGE | (lv->status & (MIRRORED | LOCKED)),
 			       region_size)) {
 		log_error("Aborting. Failed to add mirror segment. "
 			  "Remove new LV and retry.");




More information about the lvm-devel mailing list