Skip to content

Commit d0a2b13

Browse files
afagermanovgregkh
authored andcommitted
tcp: cwnd does not increase in TCP YeAH
[ Upstream commit db7196a ] Commit 7617400 (tcp: do not slow start when cwnd equals ssthresh ) introduced regression in TCP YeAH. Using 100ms delay 1% loss virtual ethernet link kernel 4.2 shows bandwidth ~500KB/s for single TCP connection and kernel 4.3 and above (including 4.8-rc4) shows bandwidth ~100KB/s. That is caused by stalled cwnd when cwnd equals ssthresh. This patch fixes it by proper increasing cwnd in this case. Signed-off-by: Artem Germanov <[email protected]> Acked-by: Dmitry Adamushko <[email protected]> Signed-off-by: David S. Miller <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
1 parent 28186a5 commit d0a2b13

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

net/ipv4/tcp_yeah.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ static void tcp_yeah_cong_avoid(struct sock *sk, u32 ack, u32 acked)
7676
if (!tcp_is_cwnd_limited(sk))
7777
return;
7878

79-
if (tp->snd_cwnd <= tp->snd_ssthresh)
79+
if (tcp_in_slow_start(tp))
8080
tcp_slow_start(tp, acked);
8181

8282
else if (!yeah->doing_reno_now) {

0 commit comments

Comments
 (0)