git: 6f6c07813b38 - main - tcp: fix reverting of spurious timeouts (RTO)
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 21 Mar 2025 05:25:28 UTC
The branch main has been updated by rscheff:
URL: https://cgit.FreeBSD.org/src/commit/?id=6f6c07813b38ab04d8b1b2bb87c0291dbae25a25
commit 6f6c07813b38ab04d8b1b2bb87c0291dbae25a25
Author: Richard Scheffenegger <rscheff@FreeBSD.org>
AuthorDate: 2025-03-21 04:23:30 +0000
Commit: Richard Scheffenegger <rscheff@FreeBSD.org>
CommitDate: 2025-03-21 04:28:31 +0000
tcp: fix reverting of spurious timeouts (RTO)
One variable that became critical to correctly calculate
the cwnd during limited transmit was not properly reverted
on detection of spurious timeouts.
PR: 282605
Reviewed By: cc, tuexen, #transport
MFC after: 3 days
Sponsored by: NetApp, Inc.
Differential Revision: https://reviews.freebsd.org/D48652
---
sys/netinet/tcp_input.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c
index 8f50843d940d..2fc1e0deea16 100644
--- a/sys/netinet/tcp_input.c
+++ b/sys/netinet/tcp_input.c
@@ -465,6 +465,7 @@ cc_cong_signal(struct tcpcb *tp, struct tcphdr *th, uint32_t type)
ENTER_CONGRECOVERY(tp->t_flags);
tp->snd_nxt = tp->snd_max;
tp->t_flags &= ~TF_PREVVALID;
+ tp->t_rxtshift = 0;
tp->t_badrxtwin = 0;
break;
}