NeilBrown: Assemble: call map_update even when not starting the array.

Martin F. Krafft madduck at alioth.debian.org
Thu May 7 12:11:37 UTC 2009


Module: mdadm
Branch: debian/experimental
Commit: 8b4e5ea926a081d870af85fe5d304bcac48d9f57
URL:    http://git.debian.org/?p=pkg-mdadm/mdadm.git;a=commit;h=8b4e5ea926a081d870af85fe5d304bcac48d9f57

Author: NeilBrown <neilb at suse.de>
Date:   Tue Apr  7 17:45:42 2009 +1000

Assemble: call map_update even when not starting the array.

For incremental assembly to work, we need to keep the 'map'
up-to-date even when not starting the array yet.

Signed-off-by: NeilBrown <neilb at suse.de>

---

 Assemble.c |   11 +++++++----
 1 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/Assemble.c b/Assemble.c
index 172bc53..73d6ee2 100644
--- a/Assemble.c
+++ b/Assemble.c
@@ -1235,13 +1235,16 @@ int assemble_container_content(struct supertype *st, int mdfd,
 	if (working == 0) {
 		close(mdfd);
 		return 1;/* Nothing new, don't try to start */
-	} else if (runstop > 0 ||
+	}
+	
+	map_update(&map, fd2devnum(mdfd),
+		   content->text_version,
+		   content->uuid, chosen_name);
+
+	if (runstop > 0 ||
 		 (working + preexist) >= content->array.working_disks) {
 		int err;
 
-		map_update(&map, fd2devnum(mdfd),
-			   content->text_version,
-			   content->uuid, chosen_name);
 		switch(content->array.level) {
 		case LEVEL_LINEAR:
 		case LEVEL_MULTIPATH:




More information about the pkg-mdadm-commits mailing list