diff options
author | Lars Ellenberg <lars.ellenberg@linbit.com> | 2012-06-08 16:30:30 +0200 |
---|---|---|
committer | Philipp Reisner <philipp.reisner@linbit.com> | 2012-11-08 16:58:32 +0100 |
commit | ab53b90e89eb2421a607655cab426232fdd82f6f (patch) | |
tree | 02474e043a62020e39d98beb4eadf30c846a9aa5 /drivers/block/drbd/drbd_req.c | |
parent | 1b6f19740da8e7ed2d1216dc69a972d10de4f0e9 (diff) | |
download | op-kernel-dev-ab53b90e89eb2421a607655cab426232fdd82f6f.zip op-kernel-dev-ab53b90e89eb2421a607655cab426232fdd82f6f.tar.gz |
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 <philipp.reisner@linbit.com>
Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
Diffstat (limited to 'drivers/block/drbd/drbd_req.c')
-rw-r--r-- | drivers/block/drbd/drbd_req.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/block/drbd/drbd_req.c b/drivers/block/drbd/drbd_req.c index 44a7d6b..d0d5167 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: |