diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c index b5ea036ca78144b86622cb0944d0b840f7225ec5..40aca7803cf2db25361dc7ef5c83ee6ea955c335 100644 --- a/net/ipv4/tcp.c +++ b/net/ipv4/tcp.c @@ -2330,6 +2330,8 @@ int tcp_disconnect(struct sock *sk, int flags) tcp_init_send_head(sk); memset(&tp->rx_opt, 0, sizeof(tp->rx_opt)); __sk_dst_reset(sk); + dst_release(sk->sk_rx_dst); + sk->sk_rx_dst = NULL; tcp_saved_syn_free(tp); /* Clean up fastopen related fields */