The branch main has been updated by kp:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=dea41633e509489087b1d3e0fcb7404e4dbc5129

commit dea41633e509489087b1d3e0fcb7404e4dbc5129
Author:     Kristof Provost <k...@freebsd.org>
AuthorDate: 2024-09-04 15:09:28 +0000
Commit:     Kristof Provost <k...@freebsd.org>
CommitDate: 2024-09-19 20:20:14 +0000

    pf: handle ACK prioritization for v6
    
    Obtained from:  OpenBSD, sthen <st...@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;

Reply via email to