replace no-return attributes
[dpdk.git] / examples / skeleton / basicfwd.c
index 5ac1dc8..72ba85f 100644 (file)
@@ -19,8 +19,7 @@
 
 static const struct rte_eth_conf port_conf_default = {
        .rxmode = {
-               .max_rx_pkt_len = ETHER_MAX_LEN,
-               .ignore_offload_bitfield = 1,
+               .max_rx_pkt_len = RTE_ETHER_MAX_LEN,
        },
 };
 
@@ -45,7 +44,13 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
        if (!rte_eth_dev_is_valid_port(port))
                return -1;
 
-       rte_eth_dev_info_get(port, &dev_info);
+       retval = rte_eth_dev_info_get(port, &dev_info);
+       if (retval != 0) {
+               printf("Error during getting device (port %u) info: %s\n",
+                               port, strerror(-retval));
+               return retval;
+       }
+
        if (dev_info.tx_offload_capa & DEV_TX_OFFLOAD_MBUF_FAST_FREE)
                port_conf.txmode.offloads |=
                        DEV_TX_OFFLOAD_MBUF_FAST_FREE;
@@ -68,7 +73,6 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
        }
 
        txconf = dev_info.default_txconf;
-       txconf.txq_flags = ETH_TXQ_FLAGS_IGNORE;
        txconf.offloads = port_conf.txmode.offloads;
        /* Allocate and set up 1 TX queue per Ethernet port. */
        for (q = 0; q < tx_rings; q++) {
@@ -84,8 +88,11 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
                return retval;
 
        /* Display the port MAC address. */
-       struct ether_addr addr;
-       rte_eth_macaddr_get(port, &addr);
+       struct rte_ether_addr addr;
+       retval = rte_eth_macaddr_get(port, &addr);
+       if (retval != 0)
+               return retval;
+
        printf("Port %u MAC: %02" PRIx8 " %02" PRIx8 " %02" PRIx8
                           " %02" PRIx8 " %02" PRIx8 " %02" PRIx8 "\n",
                        port,
@@ -94,7 +101,9 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
                        addr.addr_bytes[4], addr.addr_bytes[5]);
 
        /* Enable RX in promiscuous mode for the Ethernet device. */
-       rte_eth_promiscuous_enable(port);
+       retval = rte_eth_promiscuous_enable(port);
+       if (retval != 0)
+               return retval;
 
        return 0;
 }
@@ -103,7 +112,7 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
  * The lcore main. This is the main thread that does the work, reading from
  * an input port and writing to an output port.
  */
-static __attribute__((noreturn)) void
+static __rte_noreturn void
 lcore_main(void)
 {
        uint16_t port;
@@ -173,7 +182,7 @@ main(int argc, char *argv[])
        argv += ret;
 
        /* Check that there is an even number of ports to send/receive on. */
-       nb_ports = rte_eth_dev_count();
+       nb_ports = rte_eth_dev_count_avail();
        if (nb_ports < 2 || (nb_ports & 1))
                rte_exit(EXIT_FAILURE, "Error: number of ports must be even\n");