|
@@ -1687,6 +1687,7 @@ static void tcp_enter_frto_loss(struct sock *sk, int allowed_segments, int flag)
|
|
tp->snd_cwnd_cnt = 0;
|
|
tp->snd_cwnd_cnt = 0;
|
|
tp->snd_cwnd_stamp = tcp_time_stamp;
|
|
tp->snd_cwnd_stamp = tcp_time_stamp;
|
|
tp->frto_counter = 0;
|
|
tp->frto_counter = 0;
|
|
|
|
+ tp->bytes_acked = 0;
|
|
|
|
|
|
tp->reordering = min_t(unsigned int, tp->reordering,
|
|
tp->reordering = min_t(unsigned int, tp->reordering,
|
|
sysctl_tcp_reordering);
|
|
sysctl_tcp_reordering);
|
|
@@ -2824,6 +2825,7 @@ static void tcp_conservative_spur_to_response(struct tcp_sock *tp)
|
|
{
|
|
{
|
|
tp->snd_cwnd = min(tp->snd_cwnd, tp->snd_ssthresh);
|
|
tp->snd_cwnd = min(tp->snd_cwnd, tp->snd_ssthresh);
|
|
tp->snd_cwnd_cnt = 0;
|
|
tp->snd_cwnd_cnt = 0;
|
|
|
|
+ tp->bytes_acked = 0;
|
|
TCP_ECN_queue_cwr(tp);
|
|
TCP_ECN_queue_cwr(tp);
|
|
tcp_moderate_cwnd(tp);
|
|
tcp_moderate_cwnd(tp);
|
|
}
|
|
}
|