git: dea41633e509 - main - pf: handle ACK prioritization for v6
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 19 Sep 2024 20:21:24 UTC
The branch main has been updated by kp:
URL: https://cgit.FreeBSD.org/src/commit/?id=dea41633e509489087b1d3e0fcb7404e4dbc5129
commit dea41633e509489087b1d3e0fcb7404e4dbc5129
Author: Kristof Provost <kp@FreeBSD.org>
AuthorDate: 2024-09-04 15:09:28 +0000
Commit: Kristof Provost <kp@FreeBSD.org>
CommitDate: 2024-09-19 20:20:14 +0000
pf: handle ACK prioritization for v6
Obtained from: OpenBSD, sthen <sthen@openbsd.org>, 1a3657e9c6
Sponsored by: Rubicon Communications, LLC ("Netgate")
Differential Revision: https://reviews.freebsd.org/D46592
---
sys/netpfil/pf/pf.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c
index b0e857e55deb..c85c2e784cd9 100644
--- a/sys/netpfil/pf/pf.c
+++ b/sys/netpfil/pf/pf.c
@@ -9525,6 +9525,9 @@ pf_test6(int dir, int pflags, struct ifnet *ifp, struct mbuf **m0, struct inpcb
break;
}
+ if ((pd.hdr.tcp.th_flags & TH_ACK) && pd.p_len == 0)
+ use_2nd_queue = 1;
+
action = pf_normalize_tcp(kif, m, 0, off, h, &pd);
if (action == PF_DROP)
goto done;
@@ -9701,7 +9704,7 @@ done:
} else {
if (s != NULL)
pd.pf_mtag->qid_hash = pf_state_hash(s);
- if (pd.tos & IPTOS_LOWDELAY)
+ if (use_2nd_queue || (pd.tos & IPTOS_LOWDELAY))
pd.pf_mtag->qid = pd.act.pqid;
else
pd.pf_mtag->qid = pd.act.qid;