diff --git a/[refs] b/[refs] index 12caa0254604..6ee0cc291f29 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 172124e220f1854acc99ee394671781b8b5e2120 +refs/heads/master: dbb66c4be020b01dc2f3d7c609ddb0e09d2c0af7 diff --git a/trunk/block/blk-core.c b/trunk/block/blk-core.c index 7ae83a1e2acf..03c5a64b6ccb 100644 --- a/trunk/block/blk-core.c +++ b/trunk/block/blk-core.c @@ -1846,6 +1846,9 @@ void blk_start_request(struct request *req) * resid_len to full count and add the timeout handler. */ req->resid_len = blk_rq_bytes(req); + if (unlikely(blk_bidi_rq(req))) + req->next_rq->resid_len = blk_rq_bytes(req->next_rq); + blk_add_timer(req); } EXPORT_SYMBOL(blk_start_request);