From ae5fd63399d612d2bd80c7d55f2d85e207dd1e2e Mon Sep 17 00:00:00 2001 From: lstewart Date: Thu, 2 Dec 2010 01:01:37 +0000 Subject: Set ssthresh appropriately on RTO. This change was accidentally not ported from the pre modular CC stack. Sponsored by: FreeBSD Foundation Submitted by: David Hayes MFC after: 9 weeks X-MFC with: r215166 --- sys/netinet/tcp_input.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'sys/netinet') diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c index 8fb9a52..4dbc038 100644 --- a/sys/netinet/tcp_input.c +++ b/sys/netinet/tcp_input.c @@ -378,6 +378,8 @@ cc_cong_signal(struct tcpcb *tp, struct tcphdr *th, uint32_t type) tp->t_dupacks = 0; tp->t_bytes_acked = 0; EXIT_RECOVERY(tp->t_flags); + tp->snd_ssthresh = max(2, min(tp->snd_wnd, tp->snd_cwnd) / 2 / + tp->t_maxseg) * tp->t_maxseg; tp->snd_cwnd = tp->t_maxseg; break; case CC_RTO_ERR: -- cgit v1.1