aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv4/tcp_cdg.c
diff options
context:
space:
mode:
authorYuchung Cheng <ycheng@google.com>2015-07-09 16:16:30 -0400
committerDavid S. Miller <davem@davemloft.net>2015-07-09 17:22:52 -0400
commit76174004a0f19785a328f40388e87e982bbf69b9 (patch)
tree113a691ab55819f20b367cdeb8ba86440aa62177 /net/ipv4/tcp_cdg.c
parent071d5080e33d6f24139e4213c2d9f97a2c21b602 (diff)
tcp: do not slow start when cwnd equals ssthresh
In the original design slow start is only used to raise cwnd when cwnd is stricly below ssthresh. It makes little sense to slow start when cwnd == ssthresh: especially when hystart has set ssthresh in the initial ramp, or after recovery when cwnd resets to ssthresh. Not doing so will also help reduce the buffer bloat slightly. Signed-off-by: Yuchung Cheng <ycheng@google.com> Signed-off-by: Neal Cardwell <ncardwell@google.com> Signed-off-by: Eric Dumazet <edumazet@google.com> Signed-off-by: Nandita Dukkipati <nanditad@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/tcp_cdg.c')
-rw-r--r--net/ipv4/tcp_cdg.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv4/tcp_cdg.c b/net/ipv4/tcp_cdg.c
index 8c6fd3d5e40f..167b6a3e1b98 100644
--- a/net/ipv4/tcp_cdg.c
+++ b/net/ipv4/tcp_cdg.c
@@ -264,7 +264,7 @@ static void tcp_cdg_cong_avoid(struct sock *sk, u32 ack, u32 acked)
264 u32 prior_snd_cwnd; 264 u32 prior_snd_cwnd;
265 u32 incr; 265 u32 incr;
266 266
267 if (tp->snd_cwnd < tp->snd_ssthresh && hystart_detect) 267 if (tcp_in_slow_start(tp) && hystart_detect)
268 tcp_cdg_hystart_update(sk); 268 tcp_cdg_hystart_update(sk);
269 269
270 if (after(ack, ca->rtt_seq) && ca->rtt.v64) { 270 if (after(ack, ca->rtt_seq) && ca->rtt.v64) {