git: 2e45166856e2 - stable/14 - tcp rack, bbr: improve handling of soft errors
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 31 Oct 2024 13:38:26 UTC
The branch stable/14 has been updated by tuexen:
URL: https://cgit.FreeBSD.org/src/commit/?id=2e45166856e271f8a981a2c6c35f4738321851fb
commit 2e45166856e271f8a981a2c6c35f4738321851fb
Author: Michael Tuexen <tuexen@FreeBSD.org>
AuthorDate: 2024-08-30 07:26:41 +0000
Commit: Michael Tuexen <tuexen@FreeBSD.org>
CommitDate: 2024-10-31 11:16:29 +0000
tcp rack, bbr: improve handling of soft errors
Do not report an error, if it is stored as a soft error. This avoids,
for example, the dropping of TCP connections using an interface,
while enabling or disabling LRO on that interface.
Reviewed by: cc
Sponsored by: Netflix, Inc.
Differential Revision: https://reviews.freebsd.org/D46427
(cherry picked from commit b2044c4557443bbce974101f04e2b465d1bbe769)
---
sys/netinet/tcp_stacks/bbr.c | 1 +
sys/netinet/tcp_stacks/rack.c | 1 +
2 files changed, 2 insertions(+)
diff --git a/sys/netinet/tcp_stacks/bbr.c b/sys/netinet/tcp_stacks/bbr.c
index c1bbec3800fd..2c737360cbe4 100644
--- a/sys/netinet/tcp_stacks/bbr.c
+++ b/sys/netinet/tcp_stacks/bbr.c
@@ -13837,6 +13837,7 @@ nomore:
case ENETUNREACH:
if (TCPS_HAVERCVDSYN(tp->t_state)) {
tp->t_softerror = error;
+ error = 0;
}
/* FALLTHROUGH */
default:
diff --git a/sys/netinet/tcp_stacks/rack.c b/sys/netinet/tcp_stacks/rack.c
index 35ae371a082e..8cdb6e1f9efe 100644
--- a/sys/netinet/tcp_stacks/rack.c
+++ b/sys/netinet/tcp_stacks/rack.c
@@ -22473,6 +22473,7 @@ nomore:
case ENETDOWN:
if (TCPS_HAVERCVDSYN(tp->t_state)) {
tp->t_softerror = error;
+ error = 0;
}
/* FALLTHROUGH */
default: