examples/ethtool: convert to new ethdev offloads API
authorShahaf Shuler <shahafs@mellanox.com>
Tue, 26 Dec 2017 09:23:30 +0000 (11:23 +0200)
committerFerruh Yigit <ferruh.yigit@intel.com>
Tue, 16 Jan 2018 17:47:49 +0000 (18:47 +0100)
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@mellanox.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
examples/ethtool/ethtool-app/main.c

index fb4639e..b2517a1 100644 (file)
@@ -95,9 +95,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];
@@ -131,6 +133,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,
@@ -138,9 +141,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"
                                );