Commit 6377b923 authored by Lars Ellenberg's avatar Lars Ellenberg Committed by Jens Axboe

drbd: resync: fix too large bursts for very slow rates

While merging adjacent dirty blocks into resync requests,
the resync rate throttle was disregarded.
For very low resync rates, the effective rate may have exceeded
the intended rate by a larger margin.
Signed-off-by: default avatarPhilipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: default avatarLars Ellenberg <lars.ellenberg@linbit.com>
Signed-off-by: default avatarJens Axboe <axboe@fb.com>
parent 9ae47260
...@@ -647,7 +647,7 @@ static int make_resync_request(struct drbd_device *device, int cancel) ...@@ -647,7 +647,7 @@ static int make_resync_request(struct drbd_device *device, int cancel)
*/ */
align = 1; align = 1;
rollback_i = i; rollback_i = i;
for (;;) { while (i < number) {
if (size + BM_BLOCK_SIZE > max_bio_size) if (size + BM_BLOCK_SIZE > max_bio_size)
break; break;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment