File 0060-Assemble-don-t-check-for-pre-existing-array-when-upd.patch of Package mdadm.5365

From ec6db5ba712a23ccbcb5ad18f8506d366cb4b662 Mon Sep 17 00:00:00 2001
From: NeilBrown <neilb@suse.de>
Date: Wed, 13 May 2015 12:41:48 +1000
Subject: [PATCH 078/359] Assemble: don't check for pre-existing array when
 updating uuid.
References: bsc#1081910

This is a very corner-case, but the self-tests tripped on it,
and it makes sense not to trust the uuid when it is being changed.

Signed-off-by: NeilBrown <neilb@suse.de>
Signed-off-by: Coly Li <colyli@suse.de>

---
 Assemble.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/Assemble.c b/Assemble.c
index 25a103d..42710a8 100644
--- a/Assemble.c
+++ b/Assemble.c
@@ -1348,7 +1348,10 @@ try_again:
 	 */
 	if (map_lock(&map))
 		pr_err("failed to get exclusive lock on mapfile - continue anyway...\n");
-	mp = map_by_uuid(&map, content->uuid);
+	if (c->update && strcmp(c->update,"uuid") == 0)
+		mp = NULL;
+	else
+		mp = map_by_uuid(&map, content->uuid);
 	if (mp) {
 		struct mdinfo *dv;
 		/* array already exists. */
-- 
2.16.1

openSUSE Build Service is sponsored by