New upstream version 17.08
[deb_dpdk.git] / examples / l3fwd / main.c
index fd6605b..81995fd 100644 (file)
@@ -52,7 +52,6 @@
 #include <rte_memcpy.h>
 #include <rte_memzone.h>
 #include <rte_eal.h>
-#include <rte_per_lcore.h>
 #include <rte_launch.h>
 #include <rte_atomic.h>
 #include <rte_cycles.h>
@@ -522,10 +521,10 @@ static const struct option lgopts[] = {
  * value of 8192
  */
 #define NB_MBUF RTE_MAX(       \
-       (nb_ports*nb_rx_queue*RTE_TEST_RX_DESC_DEFAULT +        \
-       nb_ports*nb_lcores*MAX_PKT_BURST +                      \
-       nb_ports*n_tx_queue*RTE_TEST_TX_DESC_DEFAULT +          \
-       nb_lcores*MEMPOOL_CACHE_SIZE),                          \
+       (nb_ports*nb_rx_queue*nb_rxd +          \
+       nb_ports*nb_lcores*MAX_PKT_BURST +      \
+       nb_ports*n_tx_queue*nb_txd +            \
+       nb_lcores*MEMPOOL_CACHE_SIZE),          \
        (unsigned)8192)
 
 /* Parse the argument given in the command line of the application */
@@ -918,6 +917,13 @@ main(int argc, char **argv)
                                "Cannot configure device: err=%d, port=%d\n",
                                ret, portid);
 
+               ret = rte_eth_dev_adjust_nb_rx_tx_desc(portid, &nb_rxd,
+                                                      &nb_txd);
+               if (ret < 0)
+                       rte_exit(EXIT_FAILURE,
+                                "Cannot adjust number of descriptors: err=%d, "
+                                "port=%d\n", ret, portid);
+
                rte_eth_macaddr_get(portid, &ports_eth_addr[portid]);
                print_ethaddr(" Address:", &ports_eth_addr[portid]);
                printf(", ");