summaryrefslogtreecommitdiffstats
path: root/net/ipv4/tcp_output.c
diff options
context:
space:
mode:
authorEric Dumazet <edumazet@google.com>2012-07-20 07:02:33 +0200
committerDavid S. Miller <davem@davemloft.net>2012-07-20 19:59:41 +0200
commit9dc274151a548ffd215caecec5a8872db8799447 (patch)
tree13b7199958243d28c43ea3ecdeca254edc2d7245 /net/ipv4/tcp_output.c
parenttcp: use hash_32() in tcp_metrics (diff)
downloadlinux-9dc274151a548ffd215caecec5a8872db8799447.tar.xz
linux-9dc274151a548ffd215caecec5a8872db8799447.zip
tcp: fix ABC in tcp_slow_start()
When/if sysctl_tcp_abc > 1, we expect to increase cwnd by 2 if the received ACK acknowledges more than 2*MSS bytes, in tcp_slow_start() Problem is this RFC 3465 statement is not correctly coded, as the while () loop increases snd_cwnd one by one. Add a new variable to avoid this off-by one error. Signed-off-by: Eric Dumazet <edumazet@google.com> Cc: Tom Herbert <therbert@google.com> Cc: Yuchung Cheng <ycheng@google.com> Cc: Neal Cardwell <ncardwell@google.com> Cc: Nandita Dukkipati <nanditad@google.com> Cc: John Heffner <johnwheffner@gmail.com> Cc: Stephen Hemminger <shemminger@vyatta.com> Acked-by: Yuchung Cheng <ycheng@google.com> Acked-by: Neal Cardwell <ncardwell@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/tcp_output.c')
0 files changed, 0 insertions, 0 deletions