SUNRPC: Return EAGAIN instead of ENOTCONN when waking up xprt->pending
authorTrond Myklebust <Trond.Myklebust@netapp.com>
Wed, 11 Mar 2009 18:38:00 +0000 (14:38 -0400)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Wed, 11 Mar 2009 18:38:00 +0000 (14:38 -0400)
commite2bdfe4d2ff8dda5053684b08aee0f3bdf8314f1
treec12eb42c34f0d0b79130ae93ebd56159e8366ee8
parentac77291aba0acbce2060b1c31b21987d6726ff65
SUNRPC: Return EAGAIN instead of ENOTCONN when waking up xprt->pending

While we should definitely return socket errors to the task that is
currently trying to send data, there is no need to propagate the same error
to all the other tasks on xprt->pending. Doing so actually slows down
recovery, since it causes more than one tasks to attempt socket recovery.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
net/sunrpc/clnt.c
net/sunrpc/xprt.c
net/sunrpc/xprtsock.c