|
@@ -2368,6 +2368,7 @@ void tcp_write_queue_purge(struct sock *sk)
|
|
INIT_LIST_HEAD(&tcp_sk(sk)->tsorted_sent_queue);
|
|
INIT_LIST_HEAD(&tcp_sk(sk)->tsorted_sent_queue);
|
|
sk_mem_reclaim(sk);
|
|
sk_mem_reclaim(sk);
|
|
tcp_clear_all_retrans_hints(tcp_sk(sk));
|
|
tcp_clear_all_retrans_hints(tcp_sk(sk));
|
|
|
|
+ tcp_sk(sk)->packets_out = 0;
|
|
}
|
|
}
|
|
|
|
|
|
int tcp_disconnect(struct sock *sk, int flags)
|
|
int tcp_disconnect(struct sock *sk, int flags)
|
|
@@ -2417,7 +2418,6 @@ int tcp_disconnect(struct sock *sk, int flags)
|
|
icsk->icsk_backoff = 0;
|
|
icsk->icsk_backoff = 0;
|
|
tp->snd_cwnd = 2;
|
|
tp->snd_cwnd = 2;
|
|
icsk->icsk_probes_out = 0;
|
|
icsk->icsk_probes_out = 0;
|
|
- tp->packets_out = 0;
|
|
|
|
tp->snd_ssthresh = TCP_INFINITE_SSTHRESH;
|
|
tp->snd_ssthresh = TCP_INFINITE_SSTHRESH;
|
|
tp->snd_cwnd_cnt = 0;
|
|
tp->snd_cwnd_cnt = 0;
|
|
tp->window_clamp = 0;
|
|
tp->window_clamp = 0;
|