From 40ca6010734f52bd01fae48035040b1bce76519e Mon Sep 17 00:00:00 2001 From: Vitaly Fertman Date: Sat, 11 Dec 2010 02:14:33 +0300 Subject: [PATCH] b=23820 Handle unsent requests with rq_net_err in ptlrpc_check_set() i=johann i=green ptlrpc_check_set()) ASSERTION(req->rq_phase == RQ_PHASE_BULK) failed --- lustre/ptlrpc/client.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/lustre/ptlrpc/client.c b/lustre/ptlrpc/client.c index 565f3f3..214be9c 100644 --- a/lustre/ptlrpc/client.c +++ b/lustre/ptlrpc/client.c @@ -1494,6 +1494,15 @@ int ptlrpc_check_set(const struct lu_env *env, struct ptlrpc_request_set *set) if (ptlrpc_client_recv_or_unlink(req) || ptlrpc_client_bulk_active(req)) continue; + /* If there is no need to resend, fail it now. */ + if (req->rq_no_resend) { + if (req->rq_status == 0) + req->rq_status = -EIO; + ptlrpc_rqphase_move(req, RQ_PHASE_INTERPRET); + GOTO(interpret, req->rq_status); + } else { + continue; + } } if (req->rq_err) { -- 1.8.3.1