Hi,

In pfsync there are some KASSERT hidden behind #ifdef PFSYNC_DEBUG.
That does not make sense to me.  Either they are correct, then they
should actively check in production.  Or they got wrong over time,
then they should not make debugging harder.

Some basic testing did not show problems.

ok?

bluhm

Index: net/if_pfsync.c
===================================================================
RCS file: /data/mirror/openbsd/cvs/src/sys/net/if_pfsync.c,v
retrieving revision 1.303
diff -u -p -r1.303 if_pfsync.c
--- net/if_pfsync.c     14 Apr 2022 11:39:44 -0000      1.303
+++ net/if_pfsync.c     20 Apr 2022 14:00:58 -0000
@@ -1620,9 +1620,7 @@ pfsync_drop_snapshot(struct pfsync_snaps
 
                while ((st = TAILQ_FIRST(&sn->sn_qs[q])) != NULL) {
                        TAILQ_REMOVE(&sn->sn_qs[q], st, sync_list);
-#ifdef PFSYNC_DEBUG
                        KASSERT(st->sync_state == q);
-#endif
                        st->sync_state = PFSYNC_S_NONE;
                        pf_state_unref(st);
                }
@@ -1857,9 +1855,7 @@ pfsync_sendout(void)
                count = 0;
                while ((st = TAILQ_FIRST(&sn.sn_qs[q])) != NULL) {
                        TAILQ_REMOVE(&sn.sn_qs[q], st, sync_list);
-#ifdef PFSYNC_DEBUG
                        KASSERT(st->sync_state == q);
-#endif
                        st->sync_state = PFSYNC_S_NONE;
                        pfsync_qs[q].write(st, m->m_data + offset);
                        offset += pfsync_qs[q].len;
@@ -1916,9 +1912,7 @@ pfsync_insert_state(struct pf_state *st)
            ISSET(st->state_flags, PFSTATE_NOSYNC))
                return;
 
-#ifdef PFSYNC_DEBUG
        KASSERT(st->sync_state == PFSYNC_S_NONE);
-#endif
 
        if (sc->sc_len == PFSYNC_MINPKT)
                timeout_add_sec(&sc->sc_tmo, 1);
@@ -2403,7 +2397,7 @@ pfsync_q_ins(struct pf_state *st, int q)
        struct pfsync_softc *sc = pfsyncif;
        size_t nlen, sclen;
 
-#if defined(PFSYNC_DEBUG)
+#ifdef DIAGNOSTIC
        if (sc->sc_len < PFSYNC_MINPKT)
                panic("pfsync pkt len is too low %zd", sc->sc_len);
 #endif

Reply via email to