aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/md/raid1.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/md/raid1.c b/drivers/md/raid1.c
index 8c2754f835ef..240ff3125040 100644
--- a/drivers/md/raid1.c
+++ b/drivers/md/raid1.c
@@ -2485,9 +2485,10 @@ static sector_t sync_request(struct mddev *mddev, sector_t sector_nr, int *skipp
2485 */ 2485 */
2486 if (test_bit(MD_RECOVERY_REQUESTED, &mddev->recovery)) { 2486 if (test_bit(MD_RECOVERY_REQUESTED, &mddev->recovery)) {
2487 atomic_set(&r1_bio->remaining, read_targets); 2487 atomic_set(&r1_bio->remaining, read_targets);
2488 for (i = 0; i < conf->raid_disks * 2; i++) { 2488 for (i = 0; i < conf->raid_disks * 2 && read_targets; i++) {
2489 bio = r1_bio->bios[i]; 2489 bio = r1_bio->bios[i];
2490 if (bio->bi_end_io == end_sync_read) { 2490 if (bio->bi_end_io == end_sync_read) {
2491 read_targets--;
2491 md_sync_acct(bio->bi_bdev, nr_sectors); 2492 md_sync_acct(bio->bi_bdev, nr_sectors);
2492 generic_make_request(bio); 2493 generic_make_request(bio);
2493 } 2494 }