From d2bde6d3aa9468ddf0965f09907a666b92186e42 Mon Sep 17 00:00:00 2001 From: Adam Kwolek Date: Tue, 7 Feb 2012 15:03:11 +0100 Subject: [PATCH] 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 --- super-intel.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) 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 */ -- 2.39.2