diff options
author | Tom Talpey <talpey@netapp.com> | 2008-10-09 15:01:21 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2008-10-10 15:12:44 -0400 |
commit | 926449ba66ce2a45c619bbe755b00d6bdbf0d83e (patch) | |
tree | 94bebe684f2d9c1e2954843e571cb2657e75ac05 /net/sunrpc/xprtrdma/rpc_rdma.c | |
parent | 9191ca3b381b15b9a88785a8ae2fa4db8e553b0c (diff) | |
download | kernel_samsung_smdk4412-926449ba66ce2a45c619bbe755b00d6bdbf0d83e.tar.gz kernel_samsung_smdk4412-926449ba66ce2a45c619bbe755b00d6bdbf0d83e.tar.bz2 kernel_samsung_smdk4412-926449ba66ce2a45c619bbe755b00d6bdbf0d83e.zip |
RPC/RDMA: return a consistent error, when connect fails.
The xprt_connect call path does not expect such errors as ECONNREFUSED
to be returned from failed transport connection attempts, otherwise it
translates them to EIO and signals fatal errors. For example, mount.nfs
prints simply "internal error". Translate all such errors to ENOTCONN
from RPC/RDMA to match sockets behavior.
Signed-off-by: Tom Talpey <talpey@netapp.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'net/sunrpc/xprtrdma/rpc_rdma.c')
-rw-r--r-- | net/sunrpc/xprtrdma/rpc_rdma.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/sunrpc/xprtrdma/rpc_rdma.c b/net/sunrpc/xprtrdma/rpc_rdma.c index d245c0bf787..94ecf1b65ff 100644 --- a/net/sunrpc/xprtrdma/rpc_rdma.c +++ b/net/sunrpc/xprtrdma/rpc_rdma.c @@ -699,7 +699,7 @@ rpcrdma_conn_func(struct rpcrdma_ep *ep) xprt_wake_pending_tasks(xprt, 0); } else { if (xprt_test_and_clear_connected(xprt)) - xprt_wake_pending_tasks(xprt, ep->rep_connected); + xprt_wake_pending_tasks(xprt, -ENOTCONN); } spin_unlock_bh(&xprt->transport_lock); } |