NeilBrown: Assemble: don't assume array is 'clean' unless all devices think it is.

Martin F. Krafft madduck at alioth.debian.org
Tue Feb 3 10:10:09 UTC 2009


Module: mdadm
Branch: upstream
Commit: 4e9a6ff778cdc58dcc6897e74cf5ee1d3f73e1f7
URL:    http://git.debian.org/?p=pkg-mdadm/mdadm.git;a=commit;h=4e9a6ff778cdc58dcc6897e74cf5ee1d3f73e1f7

Author: NeilBrown <neilb at suse.de>
Date:   Thu Dec 18 14:11:59 2008 +1100

Assemble: don't assume array is 'clean' unless all devices think it is.

This is only significant for --assemble --force where some old
devices might be included into the array.  If anything looks like
it isn't clean, the kernel will not allow a degraded array to be started.

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

---

 Assemble.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/Assemble.c b/Assemble.c
index 1d37870..3ee028b 100644
--- a/Assemble.c
+++ b/Assemble.c
@@ -749,6 +749,8 @@ int Assemble(struct supertype *st, char *mddev, int mdfd,
 			continue;
 
 		devices[j].i.disk.state = desired_state;
+		if (!(devices[j].i.array.state & 1))
+			clean = 0;
 
 		if (st->ss->update_super(st, &devices[j].i, "assemble", NULL,
 					 verbose, 0, NULL)) {




More information about the pkg-mdadm-commits mailing list