]> Git Repo - linux.git/commitdiff
tcp: avoid cwnd undo after receiving ECN
authorYuchung Cheng <[email protected]>
Fri, 29 Jan 2016 23:11:50 +0000 (15:11 -0800)
committerDavid S. Miller <[email protected]>
Sat, 30 Jan 2016 07:03:56 +0000 (23:03 -0800)
RFC 4015 section 3.4 says the TCP sender MUST refrain from
reversing the congestion control state when the ACK signals
congestion through the ECN-Echo flag. Currently we may not
always do that when prior_ssthresh is reset upon receiving
ACKs with ECE marks. This patch fixes that.

Signed-off-by: Yuchung Cheng <[email protected]>
Signed-off-by: Neal Cardwell <[email protected]>
Signed-off-by: Eric Dumazet <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
net/ipv4/tcp_input.c

index d2ad4337b63d60f30b7b368188ec1994ad29be0d..1c2a73406261921fbea84333eabe3867106f980a 100644 (file)
@@ -2366,8 +2366,6 @@ static void tcp_undo_cwnd_reduction(struct sock *sk, bool unmark_loss)
                        tp->snd_ssthresh = tp->prior_ssthresh;
                        tcp_ecn_withdraw_cwr(tp);
                }
-       } else {
-               tp->snd_cwnd = max(tp->snd_cwnd, tp->snd_ssthresh);
        }
        tp->snd_cwnd_stamp = tcp_time_stamp;
        tp->undo_marker = 0;
This page took 0.073898 seconds and 4 git commands to generate.