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;