From: Adam Kwolek Date: Tue, 7 Feb 2012 14:03:11 +0000 (+0100) Subject: imsm: FIX: No new missing disks are allowed during general migration X-Git-Tag: mdadm-3.2.4~88 X-Git-Url: http://git.ipfire.org/?p=thirdparty%2Fmdadm.git;a=commitdiff_plain;h=d2bde6d3aa9468ddf0965f09907a666b92186e42 imsm: FIX: No new missing disks are allowed during general migration When during incremental assembly general migration is in progress, starting degraded array causes that no more disks (even present) can be added later as array is already started. Request all previously present disks during general migration for assembly. Signed-off-by: Adam Kwolek Signed-off-by: NeilBrown --- diff --git a/super-intel.c b/super-intel.c index eba11d61..17034bbd 100644 --- a/super-intel.c +++ b/super-intel.c @@ -2683,7 +2683,17 @@ static void getinfo_super_imsm(struct supertype *st, struct mdinfo *info, char * enough = 0; else /* we're normal, or already degraded */ enough = 1; - + if (is_gen_migration(dev) && missing) { + /* during general migration we need all disks + * that process is running on. + * No new missing disk is allowed. + */ + max_enough = -1; + enough = -1; + /* no more checks necessary + */ + break; + } /* in the missing/failed disk case check to see * if at least one array is runnable */