Index: sys/dev/bxe/bxe.c =================================================================== --- sys/dev/bxe/bxe.c +++ sys/dev/bxe/bxe.c @@ -6549,9 +6549,11 @@ if (fp->tx_br != NULL) { struct mbuf *m; /* just in case bxe_mq_flush() wasn't called */ + BXE_FP_TX_LOCK(fp); while ((m = buf_ring_dequeue_sc(fp->tx_br)) != NULL) { m_freem(m); } + BXE_FP_TX_UNLOCK(fp); buf_ring_free(fp->tx_br, M_DEVBUF); fp->tx_br = NULL; }