diff --git a/drivers/md/raid1.c b/drivers/md/raid1.c index 6f4824426e86944013e61ac9a5e6e92c01661c8b..afaa5d425e9a9eb8aa83bc8c0a024ac2b02fa476 100644 --- a/drivers/md/raid1.c +++ b/drivers/md/raid1.c @@ -1479,6 +1479,7 @@ static int raid1_spare_active(struct mddev *mddev) } } if (rdev + && rdev->recovery_offset == MaxSector && !test_bit(Faulty, &rdev->flags) && !test_and_set_bit(In_sync, &rdev->flags)) { count++; diff --git a/drivers/md/raid10.c b/drivers/md/raid10.c index 081bb33453535d87226c66b303ea4fc2d19fae67..0add8682175598227e8d99d4e9d9e7818bf5b3c7 100644 --- a/drivers/md/raid10.c +++ b/drivers/md/raid10.c @@ -1762,6 +1762,7 @@ static int raid10_spare_active(struct mddev *mddev) } sysfs_notify_dirent_safe(tmp->replacement->sysfs_state); } else if (tmp->rdev + && tmp->rdev->recovery_offset == MaxSector && !test_bit(Faulty, &tmp->rdev->flags) && !test_and_set_bit(In_sync, &tmp->rdev->flags)) { count++;