SUNRPC: Handle EADDRINUSE and ENOBUFS correctly
authorTrond Myklebust <trond.myklebust@hammerspace.com>
Fri, 16 Aug 2019 02:55:19 +0000 (22:55 -0400)
committerTrond Myklebust <trond.myklebust@hammerspace.com>
Mon, 26 Aug 2019 19:31:29 +0000 (15:31 -0400)
commit80f455da6cd0998a5be30a8af24ea2a22815c212
tree50178ee8c93b09b5091b83ddd04d3662af0c3027
parentbf2bf9b80e0cd3568ddc85a241abe0dd8b46ebdc
SUNRPC: Handle EADDRINUSE and ENOBUFS correctly

If a connect or bind attempt returns EADDRINUSE, that means we want to
retry with a different port. It is not a fatal connection error.
Similarly, ENOBUFS is not fatal, but just indicates a memory allocation
issue. Retry after a short delay.

Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
net/sunrpc/clnt.c