aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2006-06-26 00:27:55 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2006-06-26 09:58:39 -0700
commit3285edf152cefff482f95ceb90b1bd46ac169df1 (patch)
tree88dd6e57f6405d71c621f136d236e1dde599e5a7
parentb3cc9ec76ba44d010f4c820c4608b91aaf28a0b9 (diff)
downloadmrst-s0i3-test-3285edf152cefff482f95ceb90b1bd46ac169df1.tar.gz
mrst-s0i3-test-3285edf152cefff482f95ceb90b1bd46ac169df1.tar.xz
mrst-s0i3-test-3285edf152cefff482f95ceb90b1bd46ac169df1.zip
[PATCH] md: Fix bug that stops raid5 resync from happening
As data_disks is *less* than raid_disks, the current test here is obviously wrong. And as the difference is already available in conf->max_degraded, it makes much more sense to use that. Signed-off-by: Neil Brown <neilb@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--drivers/md/raid5.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/md/raid5.c b/drivers/md/raid5.c
index 6d3a2a09cd9..f920e50ea12 100644
--- a/drivers/md/raid5.c
+++ b/drivers/md/raid5.c
@@ -2858,7 +2858,7 @@ static inline sector_t sync_request(mddev_t *mddev, sector_t sector_nr, int *ski
* to resync, then assert that we are finished, because there is
* nothing we can do.
*/
- if (mddev->degraded >= (data_disks - raid_disks) &&
+ if (mddev->degraded >= conf->max_degraded &&
test_bit(MD_RECOVERY_SYNC, &mddev->recovery)) {
sector_t rv = (mddev->size << 1) - sector_nr;
*skipped = 1;