From: Dan Aloni <dan@xxxxxxxxxxxx> The connect worker sleeps waiting for either successful connection establishment or an error. Commit e28ce90083f0 ("xprtrdma: kmalloc rpcrdma_ep separate from rpcrdma_xprt") mistakenly removed the wake-up in cases when connection establishment fails. Fixes: e28ce90083f0 ("xprtrdma: kmalloc rpcrdma_ep separate from rpcrdma_xprt") Signed-off-by: Dan Aloni <dan@xxxxxxxxxxxx> [ cel: rebased on recent fixes to 5.8-rc; patch description rewritten ] Signed-off-by: Chuck Lever <chuck.lever@xxxxxxxxxx> --- net/sunrpc/xprtrdma/verbs.c | 1 + 1 file changed, 1 insertion(+) diff --git a/net/sunrpc/xprtrdma/verbs.c b/net/sunrpc/xprtrdma/verbs.c index 2198c8ec8dff..54c6809bf06e 100644 --- a/net/sunrpc/xprtrdma/verbs.c +++ b/net/sunrpc/xprtrdma/verbs.c @@ -296,6 +296,7 @@ rpcrdma_cm_event_handler(struct rdma_cm_id *id, struct rdma_cm_event *event) ep->re_connect_status = -ECONNABORTED; disconnected: rpcrdma_force_disconnect(ep); + wake_up_all(&ep->re_connect_wait); return rpcrdma_ep_put(ep); default: break;