On Tue, 04 Oct 2011 16:56:54 +0200 Lukasz Dorau <lukasz.dorau@xxxxxxxxx> wrote: > During activation of spare disks, only one of all available > spare disks can be activated at this moment. > It causes that for example during take-over from > RAID0 with 2 disks to RAID10, only one of two spare disks > is taken for recovery and a degraded RAID10 array > with only 3 of 4 working disks is created. > It has been fixed by adding more than one of all available > spare disks and saving them in additional_test_list > which is passed to imsm_add_spare(). > > Signed-off-by: Lukasz Dorau <lukasz.dorau@xxxxxxxxx> > --- > super-intel.c | 6 ++---- > 1 files changed, 2 insertions(+), 4 deletions(-) > > diff --git a/super-intel.c b/super-intel.c > index 7de207a..3185e91 100644 > --- a/super-intel.c > +++ b/super-intel.c > @@ -6672,9 +6672,9 @@ static struct mdinfo *imsm_activate_spare(struct active_array *a, > */ > dl = imsm_readd(super, i, a); > if (!dl) > - dl = imsm_add_spare(super, i, a, 0, NULL); > + dl = imsm_add_spare(super, i, a, 0, rv); > if (!dl) > - dl = imsm_add_spare(super, i, a, 1, NULL); > + dl = imsm_add_spare(super, i, a, 1, rv); > if (!dl) > continue; > > @@ -6711,8 +6711,6 @@ static struct mdinfo *imsm_activate_spare(struct active_array *a, > num_spares++; > dprintf("%x:%x to be %d at %llu\n", dl->major, dl->minor, > i, di->data_offset); > - > - break; > } > > if (!rv) applied, thanks, NeilBrown
Attachment:
signature.asc
Description: PGP signature