From: Lars Ellenberg Date: Fri, 8 Jun 2012 14:30:30 +0000 (+0200) Subject: drbd: fix local read error hung forever X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=ab53b90e89eb2421a607655cab426232fdd82f6f;p=deliverable%2Flinux.git drbd: fix local read error hung forever The commit drbd: simplify retry path of failed READ requests simplified it too much: it just did not do anything for local read errors. Add the missing req_may_be_completed_not_susp() to the READ_COMPLETED_WITH_ERROR case. Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg --- diff --git a/drivers/block/drbd/drbd_req.c b/drivers/block/drbd/drbd_req.c index 44a7d6ba4e4f..d0d516743fb1 100644 --- a/drivers/block/drbd/drbd_req.c +++ b/drivers/block/drbd/drbd_req.c @@ -460,6 +460,7 @@ int __req_mod(struct drbd_request *req, enum drbd_req_event what, D_ASSERT(!(req->rq_state & RQ_NET_MASK)); __drbd_chk_io_error(mdev, false); + req_may_be_completed_not_susp(req, m); break; case QUEUE_FOR_NET_READ: