[dpdk-dev] [PATCH v3 31/39] examples/ethtool: convert to new ethdev offloads API

Shahaf Shuler shahafs at mellanox.com
Tue Dec 26 10:23:30 CET 2017


Ethdev offloads API has changed since:

commit ce17eddefc20 ("ethdev: introduce Rx queue offloads API")
commit cba7f53b717d ("ethdev: introduce Tx queue offloads API")

This commit support the new API.

Signed-off-by: Shahaf Shuler <shahafs at mellanox.com>
---
 examples/ethtool/ethtool-app/main.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/examples/ethtool/ethtool-app/main.c b/examples/ethtool/ethtool-app/main.c
index bbab2f6e6..8a1a5f34e 100644
--- a/examples/ethtool/ethtool-app/main.c
+++ b/examples/ethtool/ethtool-app/main.c
@@ -124,9 +124,11 @@ static void setup_ports(struct app_config *app_cfg, int cnt_ports)
 	char str_name[16];
 	uint16_t nb_rxd = PORT_RX_QUEUE_SIZE;
 	uint16_t nb_txd = PORT_TX_QUEUE_SIZE;
+	struct rte_eth_txconf txconf;
 
 	memset(&cfg_port, 0, sizeof(cfg_port));
 	cfg_port.txmode.mq_mode = ETH_MQ_TX_NONE;
+	cfg_port.rxmode.ignore_offload_bitfield = 1;
 
 	for (idx_port = 0; idx_port < cnt_ports; idx_port++) {
 		struct app_port *ptr_port = &app_cfg->ports[idx_port];
@@ -160,6 +162,7 @@ static void setup_ports(struct app_config *app_cfg, int cnt_ports)
 						     &nb_txd) < 0)
 			rte_exit(EXIT_FAILURE,
 				 "rte_eth_dev_adjust_nb_rx_tx_desc failed");
+
 		if (rte_eth_rx_queue_setup(
 			    idx_port, 0, nb_rxd,
 			    rte_eth_dev_socket_id(idx_port), NULL,
@@ -167,9 +170,11 @@ static void setup_ports(struct app_config *app_cfg, int cnt_ports)
 			rte_exit(EXIT_FAILURE,
 				 "rte_eth_rx_queue_setup failed"
 				);
+		txconf = dev_info.default_txconf;
+		txconf.txq_flags = ETH_TXQ_FLAGS_IGNORE;
 		if (rte_eth_tx_queue_setup(
 			    idx_port, 0, nb_txd,
-			    rte_eth_dev_socket_id(idx_port), NULL) < 0)
+			    rte_eth_dev_socket_id(idx_port), &txconf) < 0)
 			rte_exit(EXIT_FAILURE,
 				 "rte_eth_tx_queue_setup failed"
 				);
-- 
2.12.0



More information about the dev mailing list