X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=examples%2Fvmdq%2Fmain.c;h=f639355dc7edff00a9308861884e4a6f242fef3a;hb=708d07847fd0a9f95d5ba51e22f6c3a68644a493;hp=e60b671d11a81c0da84832ac3358204a8e78571e;hpb=b30eb1d26e68c616a79907a43e3924f68b877e5b;p=dpdk.git diff --git a/examples/vmdq/main.c b/examples/vmdq/main.c index e60b671d11..f639355dc7 100644 --- a/examples/vmdq/main.c +++ b/examples/vmdq/main.c @@ -48,7 +48,6 @@ #include #include #include -#include #include #include #include @@ -64,22 +63,19 @@ #include #include #include -#include #include #include #include #include -#include "main.h" - -#define MAX_QUEUES 128 +#define MAX_QUEUES 1024 /* - * For 10 GbE, 128 queues require roughly - * 128*512 (RX/TX_queue_nb * RX/TX_ring_descriptors_nb) per port. + * 1024 queues require to meet the needs of a large number of vmdq_pools. + * (RX/TX_queue_nb * RX/TX_ring_descriptors_nb) per port. */ -#define NUM_MBUFS_PER_PORT (128*512) +#define NUM_MBUFS_PER_PORT (MAX_QUEUES * RTE_MAX(RTE_TEST_RX_DESC_DEFAULT, \ + RTE_TEST_TX_DESC_DEFAULT)) #define MBUF_CACHE_SIZE 64 -#define MBUF_SIZE (2048 + sizeof(struct rte_mbuf) + RTE_PKTMBUF_HEADROOM) #define MAX_PKT_BURST 32 @@ -443,7 +439,6 @@ update_mac_address(struct rte_mbuf *m, unsigned dst_port) ether_addr_copy(&vmdq_ports_eth_addr[dst_port], ð->s_addr); } -#ifndef RTE_EXEC_ENV_BAREMETAL /* When we receive a HUP signal, print out our stats */ static void sighup_handler(int signum) @@ -456,7 +451,6 @@ sighup_handler(int signum) } printf("\nFinished handling signal %d\n", signum); } -#endif /* * Main thread that does the work, reading from INPUT_PORT @@ -574,7 +568,7 @@ static unsigned check_ports_num(unsigned nb_ports) /* Main function, does initialisation and calls the per-lcore functions */ int -MAIN(int argc, char *argv[]) +main(int argc, char *argv[]) { struct rte_mempool *mbuf_pool; unsigned lcore_id, core_id = 0; @@ -582,9 +576,7 @@ MAIN(int argc, char *argv[]) unsigned nb_ports, valid_num_ports; uint8_t portid; -#ifndef RTE_EXEC_ENV_BAREMETAL signal(SIGHUP, sighup_handler); -#endif /* init EAL */ ret = rte_eal_init(argc, argv); @@ -606,8 +598,6 @@ MAIN(int argc, char *argv[]) rte_exit(EXIT_FAILURE, "Not enough cores\n"); nb_ports = rte_eth_dev_count(); - if (nb_ports > RTE_MAX_ETHPORTS) - nb_ports = RTE_MAX_ETHPORTS; /* * Update the global var NUM_PORTS and global array PORTS @@ -620,12 +610,9 @@ MAIN(int argc, char *argv[]) rte_exit(EXIT_FAILURE, "Error with valid ports number is not even or less than 2\n"); } - mbuf_pool = rte_mempool_create("MBUF_POOL", NUM_MBUFS_PER_PORT * nb_ports, - MBUF_SIZE, MBUF_CACHE_SIZE, - sizeof(struct rte_pktmbuf_pool_private), - rte_pktmbuf_pool_init, NULL, - rte_pktmbuf_init, NULL, - rte_socket_id(), 0); + mbuf_pool = rte_pktmbuf_pool_create("MBUF_POOL", + NUM_MBUFS_PER_PORT * nb_ports, MBUF_CACHE_SIZE, + 0, RTE_MBUF_DEFAULT_BUF_SIZE, rte_socket_id()); if (mbuf_pool == NULL) rte_exit(EXIT_FAILURE, "Cannot create mbuf pool\n");