[PATCH 11/20] net/zxdh: use rte_pktmbuf_free_bulk

Stephen Hemminger stephen at networkplumber.org
Fri May 8 22:33:32 CEST 2026


Replace open-coded loop with rte_pktmbuf_free_bulk().

Generated by devtools/cocci/free_bulk.cocci.

Signed-off-by: Stephen Hemminger <stephen at networkplumber.org>
---
 drivers/net/zxdh/zxdh_queue.c | 7 ++-----
 drivers/net/zxdh/zxdh_rxtx.c  | 3 +--
 2 files changed, 3 insertions(+), 7 deletions(-)

diff --git a/drivers/net/zxdh/zxdh_queue.c b/drivers/net/zxdh/zxdh_queue.c
index 7162593b16..543f626e6f 100644
--- a/drivers/net/zxdh/zxdh_queue.c
+++ b/drivers/net/zxdh/zxdh_queue.c
@@ -445,11 +445,8 @@ int32_t zxdh_dev_rx_queue_setup_finish(struct rte_eth_dev *dev, uint16_t queue_i
 
 		if (likely(rte_pktmbuf_alloc_bulk(rxvq->mpool, new_pkts, free_cnt) == 0)) {
 			error = zxdh_enqueue_recv_refill_packed(vq, new_pkts, free_cnt);
-			if (unlikely(error)) {
-				int32_t i;
-				for (i = 0; i < free_cnt; i++)
-					rte_pktmbuf_free(new_pkts[i]);
-			}
+			if (unlikely(error))
+				rte_pktmbuf_free_bulk(new_pkts, free_cnt);
 		} else {
 			PMD_DRV_LOG(ERR, "port %d rxq %d allocated bufs from %s failed",
 				hw->port_id, logic_qidx, rxvq->mpool->name);
diff --git a/drivers/net/zxdh/zxdh_rxtx.c b/drivers/net/zxdh/zxdh_rxtx.c
index db86922aea..cb324336d0 100644
--- a/drivers/net/zxdh/zxdh_rxtx.c
+++ b/drivers/net/zxdh/zxdh_rxtx.c
@@ -970,8 +970,7 @@ zxdh_recv_pkts_packed(void *rx_queue, struct rte_mbuf **rx_pkts,
 		if (!rte_pktmbuf_alloc_bulk(rxvq->mpool, new_pkts, free_cnt)) {
 			error = zxdh_enqueue_recv_refill_packed(vq, new_pkts, free_cnt);
 			if (unlikely(error)) {
-				for (i = 0; i < free_cnt; i++)
-					rte_pktmbuf_free(new_pkts[i]);
+				rte_pktmbuf_free_bulk(new_pkts, free_cnt);
 			}
 
 			if (unlikely(zxdh_queue_kick_prepare_packed(vq)))
-- 
2.53.0



More information about the dev mailing list