]> err.no Git - linux-2.6/blobdiff - net/ipv4/tcp_ipv4.c
[TCP]: TCP_DEFER_ACCEPT updates - process as established
[linux-2.6] / net / ipv4 / tcp_ipv4.c
index 0ba6e911c9797efb4067c5628155814f5e14048b..167a0f557531968e1bf8464765d7223ce277e794 100644 (file)
@@ -1920,6 +1920,14 @@ int tcp_v4_destroy_sock(struct sock *sk)
                sk->sk_sndmsg_page = NULL;
        }
 
+       if (tp->defer_tcp_accept.request) {
+               reqsk_free(tp->defer_tcp_accept.request);
+               sock_put(tp->defer_tcp_accept.listen_sk);
+               sock_put(sk);
+               tp->defer_tcp_accept.listen_sk = NULL;
+               tp->defer_tcp_accept.request = NULL;
+       }
+
        atomic_dec(&tcp_sockets_allocated);
 
        return 0;