On Thu, Apr 06 2017, Guoqing Jiang wrote: > We need to set "first = 0' at the end of rdev_for_each > loop, so we can get the array's min_offset_diff correctly > otherwise min_offset_diff just means the last rdev's > offset diff. > > Suggested-by: NeilBrown <neilb@xxxxxxxx> > Signed-off-by: Guoqing Jiang <gqjiang@xxxxxxxx> Reviewed-by: NeilBrown <neilb@xxxxxxxx> Thanks, NeilBrown > --- > drivers/md/raid10.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/md/raid10.c b/drivers/md/raid10.c > index 0f13d57..e055ec9 100644 > --- a/drivers/md/raid10.c > +++ b/drivers/md/raid10.c > @@ -3769,6 +3769,7 @@ static int raid10_run(struct mddev *mddev) > > if (blk_queue_discard(bdev_get_queue(rdev->bdev))) > discard_supported = true; > + first = 0; > } > > if (mddev->queue) { > @@ -4172,6 +4173,7 @@ static int raid10_start_reshape(struct mddev *mddev) > if (first || diff < min_offset_diff) > min_offset_diff = diff; > } > + first = 0; > } > > if (max(before_length, after_length) > min_offset_diff) > -- > 2.6.6
Attachment:
signature.asc
Description: PGP signature