|WARNING| pw117859 [PATCH] [v1, 31/35] net/ionic: allow client to specify Tx free threshold

dpdklab at iol.unh.edu dpdklab at iol.unh.edu
Tue Oct 11 04:49:02 CEST 2022


Test-Label: iol-testing
Test-Status: WARNING
http://dpdk.org/patch/117859

_apply patch failure_

Submitter: Andrew Boyer <Andrew.Boyer at amd.com>
Date: Tuesday, October 11 2022 00:50:28 
Applied on: CommitID:f13604fad12a81383da7b04821a4befb3d01e2ed
Apply patch set 117859 failed:

Checking patch drivers/net/ionic/ionic_dev.h...
error: while searching for:
#define IONIC_MAX_RING_DESC		32768
#define IONIC_MIN_RING_DESC		16
#define IONIC_DEF_TXRX_DESC		4096

#define IONIC_DEVCMD_TIMEOUT		5	/* devcmd_timeout */
#define IONIC_DEVCMD_CHECK_PERIOD_US	10	/* devcmd status chk period */

error: patch failed: drivers/net/ionic/ionic_dev.h:20
Checking patch drivers/net/ionic/ionic_ethdev.c...
Hunk #1 succeeded at 435 (offset 6 lines).
Checking patch drivers/net/ionic/ionic_lif.h...
Hunk #1 succeeded at 93 (offset -11 lines).
Checking patch drivers/net/ionic/ionic_rxtx.c...
Hunk #1 succeeded at 183 (offset -40 lines).
error: while searching for:
	if (offloads & RTE_ETH_TX_OFFLOAD_MBUF_FAST_FREE)
		txq->flags |= IONIC_QCQ_F_FAST_FREE;

	eth_dev->data->tx_queues[tx_queue_id] = txq;

	return 0;

error: patch failed: drivers/net/ionic/ionic_rxtx.c:252
error: while searching for:
		rte_mbuf_prefetch_part2(tx_pkts[0]);
	}

	/* Cleaning old buffers */
	ionic_tx_flush(txq);

	nb_avail = ionic_q_space_avail(q);
	if (unlikely(nb_avail < nb_pkts)) {

error: patch failed: drivers/net/ionic/ionic_rxtx.c:609
Applying patch drivers/net/ionic/ionic_dev.h with 1 reject...
Rejected hunk #1.
Applied patch drivers/net/ionic/ionic_ethdev.c cleanly.
Applied patch drivers/net/ionic/ionic_lif.h cleanly.
Applying patch drivers/net/ionic/ionic_rxtx.c with 2 rejects...
Hunk #1 applied cleanly.
Rejected hunk #2.
Rejected hunk #3.
diff a/drivers/net/ionic/ionic_dev.h b/drivers/net/ionic/ionic_dev.h	(rejected hunks)
@@ -20,6 +20,7 @@
 #define IONIC_MAX_RING_DESC		32768
 #define IONIC_MIN_RING_DESC		16
 #define IONIC_DEF_TXRX_DESC		4096
+#define IONIC_DEF_TXRX_BURST		32
 
 #define IONIC_DEVCMD_TIMEOUT		5	/* devcmd_timeout */
 #define IONIC_DEVCMD_CHECK_PERIOD_US	10	/* devcmd status chk period */
diff a/drivers/net/ionic/ionic_rxtx.c b/drivers/net/ionic/ionic_rxtx.c	(rejected hunks)
@@ -252,6 +259,10 @@ ionic_dev_tx_queue_setup(struct rte_eth_dev *eth_dev, uint16_t tx_queue_id,
 	if (offloads & RTE_ETH_TX_OFFLOAD_MBUF_FAST_FREE)
 		txq->flags |= IONIC_QCQ_F_FAST_FREE;
 
+	txq->free_thresh =
+		tx_conf->tx_free_thresh ? tx_conf->tx_free_thresh :
+		nb_desc - IONIC_DEF_TXRX_BURST;
+
 	eth_dev->data->tx_queues[tx_queue_id] = txq;
 
 	return 0;
@@ -609,8 +620,10 @@ ionic_xmit_pkts(void *tx_queue, struct rte_mbuf **tx_pkts,
 		rte_mbuf_prefetch_part2(tx_pkts[0]);
 	}
 
-	/* Cleaning old buffers */
-	ionic_tx_flush(txq);
+	if (unlikely(ionic_q_space_avail(q) < txq->free_thresh)) {
+		/* Cleaning old buffers */
+		ionic_tx_flush(txq);
+	}
 
 	nb_avail = ionic_q_space_avail(q);
 	if (unlikely(nb_avail < nb_pkts)) {

https://lab.dpdk.org/results/dashboard/patchsets/23900/

UNH-IOL DPDK Community Lab


More information about the test-report mailing list