SUNRPC: Never reuse the socket port after an xs_close()

commit 246408dcd5 upstream.

If we call xs_close(), we're in one of two situations:
 - Autoclose, which means we don't expect to resend a request
 - bind+connect failed, which probably means the port is in use

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Trond Myklebust
2011-03-22 18:40:10 -04:00
committed by Greg Kroah-Hartman
parent 95e7148d08
commit eaa255a8d5

View File

@@ -743,6 +743,8 @@ static void xs_reset_transport(struct sock_xprt *transport)
if (sk == NULL)
return;
transport->srcport = 0;
write_lock_bh(&sk->sk_callback_lock);
transport->inet = NULL;
transport->sock = NULL;