|
@@ -8948,7 +8948,8 @@ void md_reap_sync_thread(struct mddev *mddev)
|
|
|
/* resync has finished, collect result */
|
|
/* resync has finished, collect result */
|
|
|
md_unregister_thread(&mddev->sync_thread);
|
|
md_unregister_thread(&mddev->sync_thread);
|
|
|
if (!test_bit(MD_RECOVERY_INTR, &mddev->recovery) &&
|
|
if (!test_bit(MD_RECOVERY_INTR, &mddev->recovery) &&
|
|
|
- !test_bit(MD_RECOVERY_REQUESTED, &mddev->recovery)) {
|
|
|
|
|
|
|
+ !test_bit(MD_RECOVERY_REQUESTED, &mddev->recovery) &&
|
|
|
|
|
+ mddev->degraded != mddev->raid_disks) {
|
|
|
/* success...*/
|
|
/* success...*/
|
|
|
/* activate any spares */
|
|
/* activate any spares */
|
|
|
if (mddev->pers->spare_active(mddev)) {
|
|
if (mddev->pers->spare_active(mddev)) {
|