aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/block/drbd/drbd_worker.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/block/drbd/drbd_worker.c')
-rw-r--r--drivers/block/drbd/drbd_worker.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/drivers/block/drbd/drbd_worker.c b/drivers/block/drbd/drbd_worker.c
index 48452fe83603..53b74254b1c2 100644
--- a/drivers/block/drbd/drbd_worker.c
+++ b/drivers/block/drbd/drbd_worker.c
@@ -1481,13 +1481,19 @@ void drbd_start_resync(struct drbd_conf *mdev, enum drbd_conns side)
1481 r = SS_UNKNOWN_ERROR; 1481 r = SS_UNKNOWN_ERROR;
1482 1482
1483 if (r == SS_SUCCESS) { 1483 if (r == SS_SUCCESS) {
1484 mdev->rs_total = 1484 unsigned long tw = drbd_bm_total_weight(mdev);
1485 mdev->rs_mark_left = drbd_bm_total_weight(mdev); 1485 unsigned long now = jiffies;
1486 int i;
1487
1486 mdev->rs_failed = 0; 1488 mdev->rs_failed = 0;
1487 mdev->rs_paused = 0; 1489 mdev->rs_paused = 0;
1488 mdev->rs_start =
1489 mdev->rs_mark_time = jiffies;
1490 mdev->rs_same_csum = 0; 1490 mdev->rs_same_csum = 0;
1491 mdev->rs_total = tw;
1492 mdev->rs_start = now;
1493 for (i = 0; i < DRBD_SYNC_MARKS; i++) {
1494 mdev->rs_mark_left[i] = tw;
1495 mdev->rs_mark_time[i] = now;
1496 }
1491 _drbd_pause_after(mdev); 1497 _drbd_pause_after(mdev);
1492 } 1498 }
1493 write_unlock_irq(&global_state_lock); 1499 write_unlock_irq(&global_state_lock);