git: 2b7f2890a812 - main - dummynet: fix pie

From: Warner Losh <imp_at_FreeBSD.org>
Date: Fri, 06 Sep 2024 18:35:38 UTC
The branch main has been updated by imp:

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

commit 2b7f2890a812eb09dccaa8069483566a3b292338
Author:     Franco Fichtner <franco@opnsense.org>
AuthorDate: 2024-07-29 14:38:00 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2024-09-06 18:34:33 +0000

    dummynet: fix pie
    
    Since 26b9e1f07fa codel was fixed but traffic was not flowing for
    pie too. Apply the same fix.
    
    MFC after:      1 week
    Sponsored by:   OPNsense
    Differential Revision:  https://reviews.freebsd.org/D46182
    Also see:       https://redmine.pfsense.org/issues/13996
    Also see:       https://forum.opnsense.org/index.php?topic=41827.0
    Reviewed by: imp, markj
    Pull Request: https://github.com/freebsd/freebsd-src/pull/1390
---
 sys/netpfil/ipfw/dn_sched_fq_pie.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/sys/netpfil/ipfw/dn_sched_fq_pie.c b/sys/netpfil/ipfw/dn_sched_fq_pie.c
index 632bfd4b7152..06700b0f93af 100644
--- a/sys/netpfil/ipfw/dn_sched_fq_pie.c
+++ b/sys/netpfil/ipfw/dn_sched_fq_pie.c
@@ -744,6 +744,9 @@ pie_enqueue(struct fq_pie_flow *q, struct mbuf* m, struct fq_pie_si *si)
 	}
 
 	if (t != DROP) {
+		if (m->m_pkthdr.rcvif != NULL)
+			m_rcvif_serialize(m);
+
 		mq_append(&q->mq, m);
 		fq_update_stats(q, si, len, 0);
 		return 0;