git: 934caaec3afc - main - tcp: improve KASSERT in limited retransmit
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 01 May 2025 16:14:53 UTC
The branch main has been updated by tuexen:
URL: https://cgit.FreeBSD.org/src/commit/?id=934caaec3afc43638c2a1da8fbe3b672566db4fe
commit 934caaec3afc43638c2a1da8fbe3b672566db4fe
Author: Michael Tuexen <tuexen@FreeBSD.org>
AuthorDate: 2025-05-01 16:11:03 +0000
Commit: Michael Tuexen <tuexen@FreeBSD.org>
CommitDate: 2025-05-01 16:11:03 +0000
tcp: improve KASSERT in limited retransmit
When doing a limited retransmit, allow up to 2 * MSS - 1 if the
Nagle algorithm has been disabled.
PR: 282605
Reviewed by: cc, Peter Lei
MFC after: 3 days
Sponsored by: Netflix, Inc.
Differential Revision: https://reviews.freebsd.org/D49922
---
sys/netinet/tcp_input.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c
index a9b5f5374503..817079dfe6c8 100644
--- a/sys/netinet/tcp_input.c
+++ b/sys/netinet/tcp_input.c
@@ -2815,9 +2815,11 @@ enter_recovery:
KASSERT((tp->t_dupacks == 2 &&
tp->snd_limited == 0) ||
(sent == maxseg + 1 &&
- tp->t_flags & TF_SENTFIN),
- ("%s: sent too much",
- __func__));
+ tp->t_flags & TF_SENTFIN) ||
+ (sent < 2 * maxseg &&
+ tp->t_flags & TF_NODELAY),
+ ("%s: sent too much: %u>%u",
+ __func__, sent, maxseg));
tp->snd_limited = 2;
} else if (sent > 0) {
++tp->snd_limited;