The branch main has been updated by akiyano: URL: https://cgit.FreeBSD.org/src/commit/?id=f08def9ed97f45700eb0611a3fd9240210c9303e
commit f08def9ed97f45700eb0611a3fd9240210c9303e Author: Arthur Kiyanovski <[email protected]> AuthorDate: 2026-07-14 20:20:06 +0000 Commit: Arthur Kiyanovski <[email protected]> CommitDate: 2026-07-16 18:20:41 +0000 ena: Swap cleanup order As RX processing is heavier than TX completions processing, swap the order and process TX completions first, in order to avoid starving the completions and causing potential missing TX completions. Submitted by: Ofir Tabachnik <[email protected]> MFC after: 2 weeks Sponsored by: Amazon, Inc. Reviewed by: cperciva Differential Revision: https://reviews.freebsd.org/D58239 --- sys/dev/ena/ena_datapath.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/ena/ena_datapath.c b/sys/dev/ena/ena_datapath.c index 91e3e3b6e4cd..1e5298c2d984 100644 --- a/sys/dev/ena/ena_datapath.c +++ b/sys/dev/ena/ena_datapath.c @@ -98,8 +98,8 @@ ena_cleanup(void *arg, int pending) atomic_store_8(&rx_ring->first_interrupt, 1); for (i = 0; i < ENA_CLEAN_BUDGET; ++i) { - rx_again = ena_rx_cleanup(rx_ring); tx_again = ena_tx_cleanup(tx_ring); + rx_again = ena_rx_cleanup(rx_ring); if (unlikely(((if_getdrvflags(ifp) & IFF_DRV_RUNNING) == 0) || (ENA_FLAG_ISSET(ENA_FLAG_TRIGGER_RESET, adapter))))
