diff --git a/drivers/md/raid1.c b/drivers/md/raid1.c index 80aeee63dfb78..a60acd72210aa 100644 --- a/drivers/md/raid1.c +++ b/drivers/md/raid1.c @@ -1829,12 +1829,11 @@ static int raid1_remove_disk(struct mddev *mddev, struct md_rdev *rdev) struct r1conf *conf = mddev->private; int err = 0; int number = rdev->raid_disk; + struct raid1_info *p = conf->mirrors + number; if (unlikely(number >= conf->raid_disks)) goto abort; - struct raid1_info *p = conf->mirrors + number; - if (rdev != p->rdev) p = conf->mirrors + conf->raid_disks + number;