diff options
Diffstat (limited to 'net/sunrpc/xprtsock.c')
-rw-r--r-- | net/sunrpc/xprtsock.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/sunrpc/xprtsock.c b/net/sunrpc/xprtsock.c index 4a567a93e6ad..63d79e347c00 100644 --- a/net/sunrpc/xprtsock.c +++ b/net/sunrpc/xprtsock.c | |||
@@ -1142,6 +1142,7 @@ static void xs_tcp_state_change(struct sock *sk) | |||
1142 | break; | 1142 | break; |
1143 | case TCP_FIN_WAIT1: | 1143 | case TCP_FIN_WAIT1: |
1144 | /* The client initiated a shutdown of the socket */ | 1144 | /* The client initiated a shutdown of the socket */ |
1145 | xprt->connect_cookie++; | ||
1145 | xprt->reestablish_timeout = 0; | 1146 | xprt->reestablish_timeout = 0; |
1146 | set_bit(XPRT_CLOSING, &xprt->state); | 1147 | set_bit(XPRT_CLOSING, &xprt->state); |
1147 | smp_mb__before_clear_bit(); | 1148 | smp_mb__before_clear_bit(); |
@@ -1154,6 +1155,7 @@ static void xs_tcp_state_change(struct sock *sk) | |||
1154 | set_bit(XPRT_CLOSING, &xprt->state); | 1155 | set_bit(XPRT_CLOSING, &xprt->state); |
1155 | xprt_force_disconnect(xprt); | 1156 | xprt_force_disconnect(xprt); |
1156 | case TCP_SYN_SENT: | 1157 | case TCP_SYN_SENT: |
1158 | xprt->connect_cookie++; | ||
1157 | case TCP_CLOSING: | 1159 | case TCP_CLOSING: |
1158 | /* | 1160 | /* |
1159 | * If the server closed down the connection, make sure that | 1161 | * If the server closed down the connection, make sure that |