git: 9fd4065f4551 - stable/14 - ena: Swap cleanup order
Arthur Kiyanovski <[email protected]> Sat, 01 Aug 2026 15:14:01 +0000
| Newsgroups | gmane.os.freebsd.devel.cvs.src |
|---|---|
| Message-ID | <6a6e0d39.385a9.43f88af3__30396.5985121735$1785597264$gmane$org@gitrepo.freebsd.org> |
The branch stable/14 has been updated by akiyano: URL: https://cgit.FreeBSD.org/src/commit/?id=9fd4065f4551e886cc09640f6672b4c860cf1d7b commit 9fd4065f4551e886cc09640f6672b4c860cf1d7b Author: Arthur Kiyanovski <[email protected]> AuthorDate: 2026-07-14 20:20:06 +0000 Commit: Arthur Kiyanovski <[email protected]> CommitDate: 2026-08-01 15:12:05 +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 (cherry picked from commit f08def9ed97f45700eb0611a3fd9240210c9303e) --- 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 23cbf62b5143..4fbdb8daaf58 100644 --- a/sys/dev/ena/ena_datapath.c +++ b/sys/dev/ena/ena_datapath.c @@ -100,8 +100,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))))