]> git.baikalelectronics.ru Git - kernel.git/commit
SUNRPC: Ensure we return EAGAIN in xs_nospace if congestion is cleared
authorTrond Myklebust <Trond.Myklebust@netapp.com>
Tue, 22 Nov 2011 12:44:28 +0000 (14:44 +0200)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Tue, 22 Nov 2011 21:55:27 +0000 (23:55 +0200)
commit22e5214fb9dac540b824aa2f9ee644864890cf85
treea65b8af87ddc7b48911dd04c4644d2d2aaf0127d
parentc0363430fe05229577e48d09809ff7aa9af81b52
SUNRPC: Ensure we return EAGAIN in xs_nospace if congestion is cleared

By returning '0' instead of 'EAGAIN' when the tests in xs_nospace() fail
to find evidence of socket congestion, we are making the RPC engine believe
that the message was incorrectly sent and so it disconnects the socket
instead of just retrying.

The bug appears to have been introduced by commit
26f8339b15f3c498f808772763b661886c60f582 (SUNRPC: Ensure that xs_nospace
return values are propagated).

Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Cc: stable@vger.kernel.org [>= 2.6.30]
Tested-by: Andrew Cooper <andrew.cooper3@citrix.com>
net/sunrpc/xprtsock.c