diff options
author | NeilBrown <neilb@suse.de> | 2009-06-18 01:14:12 +0200 |
---|---|---|
committer | NeilBrown <neilb@suse.de> | 2009-06-18 01:14:12 +0200 |
commit | 48606a9f2fc034f0b308d088c1f7ab6d407c462c (patch) | |
tree | 4d1e9f14a3400905ff6c1a6d16c423da013bee8d /drivers/md/raid5.c | |
parent | md/raid5: add missing call to schedule() after prepare_to_wait() (diff) | |
download | linux-48606a9f2fc034f0b308d088c1f7ab6d407c462c.tar.xz linux-48606a9f2fc034f0b308d088c1f7ab6d407c462c.zip |
md/raid5: correctly update sync_completed when we reach max_resync
At the end of reshape_request we update cyrr_resync_completed
if we are about to pause due to reaching resync_max.
However we update it to the wrong value. We need to add the
"reshape_sectors" that have just been reshaped.
Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'drivers/md/raid5.c')
-rw-r--r-- | drivers/md/raid5.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/md/raid5.c b/drivers/md/raid5.c index 59e29c2983cb..f9f991e6e138 100644 --- a/drivers/md/raid5.c +++ b/drivers/md/raid5.c @@ -3946,7 +3946,7 @@ static sector_t reshape_request(mddev_t *mddev, sector_t sector_nr, int *skipped wait_event(conf->wait_for_overlap, atomic_read(&conf->reshape_stripes) == 0); mddev->reshape_position = conf->reshape_progress; - mddev->curr_resync_completed = mddev->curr_resync; + mddev->curr_resync_completed = mddev->curr_resync + reshape_sectors; conf->reshape_checkpoint = jiffies; set_bit(MD_CHANGE_DEVS, &mddev->flags); md_wakeup_thread(mddev->thread); |