diff options
author | NeilBrown <neilb@suse.de> | 2006-01-06 03:20:35 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-06 11:34:06 -0500 |
commit | a24a8dd858e0ba50f06a9fd8f61fe8c4fe7a8d8e (patch) | |
tree | 14236abb515dcb8101ade92632d5da0d772d7330 /drivers/md | |
parent | a8745db232dd86f145bff6946e78f839acab511b (diff) |
[PATCH] md: break out of a loop that doesn't need to run to completion
Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/md')
-rw-r--r-- | drivers/md/raid10.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/md/raid10.c b/drivers/md/raid10.c index 254b50e32135..253322ae9195 100644 --- a/drivers/md/raid10.c +++ b/drivers/md/raid10.c | |||
@@ -1672,8 +1672,10 @@ static sector_t sync_request(mddev_t *mddev, sector_t sector_nr, int *skipped, i | |||
1672 | for (j=0; j<conf->copies;j++) { | 1672 | for (j=0; j<conf->copies;j++) { |
1673 | int d = r10_bio->devs[j].devnum; | 1673 | int d = r10_bio->devs[j].devnum; |
1674 | if (conf->mirrors[d].rdev == NULL || | 1674 | if (conf->mirrors[d].rdev == NULL || |
1675 | test_bit(Faulty, &conf->mirrors[d].rdev->flags)) | 1675 | test_bit(Faulty, &conf->mirrors[d].rdev->flags)) { |
1676 | still_degraded = 1; | 1676 | still_degraded = 1; |
1677 | break; | ||
1678 | } | ||
1677 | } | 1679 | } |
1678 | must_sync = bitmap_start_sync(mddev->bitmap, sect, | 1680 | must_sync = bitmap_start_sync(mddev->bitmap, sect, |
1679 | &sync_blocks, still_degraded); | 1681 | &sync_blocks, still_degraded); |