From: Jens Axboe Date: Wed, 12 Aug 2020 17:48:15 +0000 (-0600) Subject: io_u: calculate incremental residuals correctly X-Git-Tag: fio-3.22~4 X-Git-Url: https://git.kernel.dk/?p=fio.git;a=commitdiff_plain;h=84abeef7d9f2f5cded36dcfc127b3f33db89ea57 io_u: calculate incremental residuals correctly We need to use the transfer buffer length for the residual calculation, otherwise multiple shorts on the same IO will not calculate the right value. Fixes: 5fff95436922 ("Add support for >= 4G block sizes") Signed-off-by: Jens Axboe --- diff --git a/io_u.c b/io_u.c index dbb0a6f8..2ef5acec 100644 --- a/io_u.c +++ b/io_u.c @@ -1977,7 +1977,7 @@ static void io_completed(struct thread_data *td, struct io_u **io_u_ptr, td->last_ddir = ddir; if (!io_u->error && ddir_rw(ddir)) { - unsigned long long bytes = io_u->buflen - io_u->resid; + unsigned long long bytes = io_u->xfer_buflen - io_u->resid; int ret; /*