Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 16 Jul 2026 18:24:11 +0000
From:      Arthur Kiyanovski <akiyano@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Cc:        Arthur Kiyanovski <akiyano@amazon.com>
Subject:   git: f08def9ed97f - main - ena: Swap cleanup order
Message-ID:  <6a5921cb.37f09.69b4bc91@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch main has been updated by akiyano:

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

commit f08def9ed97f45700eb0611a3fd9240210c9303e
Author:     Arthur Kiyanovski <akiyano@amazon.com>
AuthorDate: 2026-07-14 20:20:06 +0000
Commit:     Arthur Kiyanovski <akiyano@FreeBSD.org>
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 <ofirt@amazon.com>
    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))))


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6a5921cb.37f09.69b4bc91>