git: aab309b4134a - stable/12 - pfsync: Unconditionally push packets when requesting state updates

Kristof Provost kp at FreeBSD.org
Wed Mar 31 13:13:07 UTC 2021


The branch stable/12 has been updated by kp:

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

commit aab309b4134a1822fab48d799580e4afdf90ac4a
Author:     Thomas Kurschel <topical at gmx.net>
AuthorDate: 2021-03-15 13:28:52 +0000
Commit:     Kristof Provost <kp at FreeBSD.org>
CommitDate: 2021-03-31 08:56:46 +0000

    pfsync: Unconditionally push packets when requesting state updates
    
    When we request a bulk sync we need to ensure we actually send out that
    request, not just buffer it until we have enough data to send a full
    packet.
    
    PR:             254236
    MFC after:      2 weeks
    Differential Revision:  https://reviews.freebsd.org/D29271
    
    (cherry picked from commit 9f2e5184173f6af70306678b018270df9a9600f2)
---
 sys/netpfil/pf/if_pfsync.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/sys/netpfil/pf/if_pfsync.c b/sys/netpfil/pf/if_pfsync.c
index dc149ff486d5..65dd64b02bbd 100644
--- a/sys/netpfil/pf/if_pfsync.c
+++ b/sys/netpfil/pf/if_pfsync.c
@@ -1959,7 +1959,7 @@ pfsync_request_update(u_int32_t creatorid, u_int64_t id)
 		nlen += sizeof(struct pfsync_subheader);
 
 	if (b->b_len + nlen > sc->sc_ifp->if_mtu) {
-		pfsync_sendout(1, 0);
+		pfsync_sendout(0, 0);
 
 		nlen = sizeof(struct pfsync_subheader) +
 		    sizeof(struct pfsync_upd_req);
@@ -1967,6 +1967,8 @@ pfsync_request_update(u_int32_t creatorid, u_int64_t id)
 
 	TAILQ_INSERT_TAIL(&b->b_upd_req_list, item, ur_entry);
 	b->b_len += nlen;
+
+	pfsync_push(b);
 }
 
 static bool


More information about the dev-commits-src-all mailing list