tcp: make undo_cwnd mandatory for congestion modules
commite97991832a4ea4a5f47d65f068a4c966a2eb5730
authorFlorian Westphal <fw@strlen.de>
Mon, 21 Nov 2016 13:18:38 +0000 (21 14:18 +0100)
committerDavid S. Miller <davem@davemloft.net>
Mon, 21 Nov 2016 18:20:17 +0000 (21 13:20 -0500)
tree870e5c09c37890d286872c9ae22382d6bf336b37
parent85f7e7508a1d288b513493196ef406c6c06134e1
tcp: make undo_cwnd mandatory for congestion modules

The undo_cwnd fallback in the stack doubles cwnd based on ssthresh,
which un-does reno halving behaviour.

It seems more appropriate to let congctl algorithms pair .ssthresh
and .undo_cwnd properly. Add a 'tcp_reno_undo_cwnd' function and wire it
up for all congestion algorithms that used to rely on the fallback.

Cc: Eric Dumazet <edumazet@google.com>
Cc: Yuchung Cheng <ycheng@google.com>
Cc: Neal Cardwell <ncardwell@google.com>
Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/tcp.h
net/ipv4/tcp_cong.c
net/ipv4/tcp_dctcp.c
net/ipv4/tcp_hybla.c
net/ipv4/tcp_input.c
net/ipv4/tcp_lp.c
net/ipv4/tcp_vegas.c
net/ipv4/tcp_westwood.c