aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/md
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2009-08-13 10:13:00 +1000
committerNeilBrown <neilb@suse.de>2009-08-13 10:13:00 +1000
commita639755cf885e437b2fe4168d35157fa90d530ab (patch)
tree01d9a04a1c1c0b16863a51ec389470e436e9fb13 /drivers/md
parentmd/raid5: allow new reshape modes to be restarted in the middle. (diff)
downloadlinux-dev-a639755cf885e437b2fe4168d35157fa90d530ab.tar.xz
linux-dev-a639755cf885e437b2fe4168d35157fa90d530ab.zip
md/raid5: make sure a reshape restarts at the correct address.
This "if" don't allow for the possibility that the number of devices doesn't change, and so sector_nr isn't set correctly in that case. So change '>' to '>='. Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'drivers/md')
-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 b8a22a2205cf..94a74cb5cccb 100644
--- a/drivers/md/raid5.c
+++ b/drivers/md/raid5.c
@@ -3785,7 +3785,7 @@ static sector_t reshape_request(mddev_t *mddev, sector_t sector_nr, int *skipped
conf->reshape_progress < raid5_size(mddev, 0, 0)) {
sector_nr = raid5_size(mddev, 0, 0)
- conf->reshape_progress;
- } else if (mddev->delta_disks > 0 &&
+ } else if (mddev->delta_disks >= 0 &&
conf->reshape_progress > 0)
sector_nr = conf->reshape_progress;
sector_div(sector_nr, new_data_disks);