All of lore.kernel.org
 help / color / mirror / Atom feed
From: Balazs Nemeth <bnemeth@redhat.com>
To: bnemeth@redhat.com, dev@dpdk.org
Subject: [dpdk-dev] [PATCH 3/8] net/qede: assume txq->sw_tx_ring[idx] is never null in qede_free_tx_pkt
Date: Fri,  5 Mar 2021 14:14:01 +0100	[thread overview]
Message-ID: <f6a6da02426b8f3c62c13837918b61e914a49a5b.1614938727.git.bnemeth@redhat.com> (raw)
In-Reply-To: <cover.1614938727.git.bnemeth@redhat.com>

The ring txq->sw_tx_ring is managed with txq->sw_tx_cons. As long as
txq->sw_tx_cons is correct, there is no need to check if
txq->sw_tx_ring[idx] is null explicitly.

Signed-off-by: Balazs Nemeth <bnemeth@redhat.com>
---
 drivers/net/qede/qede_rxtx.c | 27 +++++++++++----------------
 1 file changed, 11 insertions(+), 16 deletions(-)

diff --git a/drivers/net/qede/qede_rxtx.c b/drivers/net/qede/qede_rxtx.c
index 1308c71db..c5e12ac6b 100644
--- a/drivers/net/qede/qede_rxtx.c
+++ b/drivers/net/qede/qede_rxtx.c
@@ -890,25 +890,20 @@ qede_free_tx_pkt(struct qede_tx_queue *txq)
 
 	idx = TX_CONS(txq);
 	mbuf = txq->sw_tx_ring[idx];
-	if (mbuf) {
-		nb_segs = mbuf->nb_segs;
-		PMD_TX_LOG(DEBUG, txq, "nb_segs to free %u\n", nb_segs);
+	RTE_ASSERT(mbuf);
+	nb_segs = mbuf->nb_segs;
+	PMD_TX_LOG(DEBUG, txq, "nb_segs to free %u\n", nb_segs);
 
-		ret = nb_segs;
-		while (nb_segs) {
-			/* It's like consuming rxbuf in recv() */
-			ecore_chain_consume(&txq->tx_pbl);
-			nb_segs--;
-		}
-
-		rte_pktmbuf_free(mbuf);
-		txq->sw_tx_ring[idx] = NULL;
-		txq->sw_tx_cons++;
-		PMD_TX_LOG(DEBUG, txq, "Freed tx packet\n");
-	} else {
+	ret = nb_segs;
+	while (nb_segs) {
+		/* It's like consuming rxbuf in recv() */
 		ecore_chain_consume(&txq->tx_pbl);
-		ret = 1;
+		nb_segs--;
 	}
+
+	rte_pktmbuf_free(mbuf);
+	txq->sw_tx_cons++;
+	PMD_TX_LOG(DEBUG, txq, "Freed tx packet\n");
 	return ret;
 }
 
-- 
2.29.2


  parent reply	other threads:[~2021-03-05 13:14 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-05 13:13 [dpdk-dev] [PATCH 0/8] Optimize qede use of rx/tx_entries Balazs Nemeth
2021-03-05 13:13 ` [dpdk-dev] [PATCH 1/8] net/qede: remove flags from qede_tx_entry and simplify to rte_mbuf Balazs Nemeth
2021-03-05 13:14 ` [dpdk-dev] [PATCH 2/8] net/qede: avoid repeatedly calling ecore_chain_get_cons_idx Balazs Nemeth
2021-03-05 13:14 ` Balazs Nemeth [this message]
2021-03-05 13:14 ` [dpdk-dev] [PATCH 4/8] net/qede: inline qede_free_tx_pkt to prepare for rte_pktmbuf_free_bulk Balazs Nemeth
2021-03-05 13:14 ` [dpdk-dev] [PATCH 5/8] net/qede: use rte_pktmbuf_free_bulk instead of rte_pktmbuf_free Balazs Nemeth
2021-03-05 13:14 ` [dpdk-dev] [PATCH 6/8] net/qede: prefetch txq->hw_cons_ptr Balazs Nemeth
2021-03-05 13:14 ` [dpdk-dev] [PATCH 7/8] net/qede: prefetch next packet to free Balazs Nemeth
2021-03-05 13:14 ` [dpdk-dev] [PATCH 8/8] net/qede: remove page_offset from struct qede_rx_entry and simplify Balazs Nemeth
2021-03-08 18:13 ` [dpdk-dev] [PATCH 0/8] Optimize qede use of rx/tx_entries Jerin Jacob
2021-03-10  6:43   ` [dpdk-dev] [EXT] " Igor Russkikh
2021-03-10  7:51     ` Jerin Jacob
2021-03-10  8:17       ` Igor Russkikh
2021-03-20 13:16     ` Jerin Jacob
2021-03-22 17:08 ` [dpdk-dev] [EXT] " Igor Russkikh
2021-03-24  9:18   ` Jerin Jacob
2021-03-24  9:34     ` Balazs Nemeth

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f6a6da02426b8f3c62c13837918b61e914a49a5b.1614938727.git.bnemeth@redhat.com \
    --to=bnemeth@redhat.com \
    --cc=dev@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.