examples/ip_reassembly: use pktmbuf to create mempool
authorAshish Jain <ashish.jain@nxp.com>
Thu, 12 Oct 2017 13:25:17 +0000 (18:55 +0530)
committerThomas Monjalon <thomas@monjalon.net>
Fri, 13 Oct 2017 23:03:20 +0000 (01:03 +0200)
Use of rte_mempool_create() with the helper provided in
librte_mbuf: rte_pktmbuf_pool_create().
This is the preferred way to create a mbuf pool else
it may not work on implementation using the HW buffer pool

Signed-off-by: Ashish Jain <ashish.jain@nxp.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
examples/ip_reassembly/main.c

index cadf4c5..2f662ba 100644 (file)
 #define MAX_JUMBO_PKT_LEN  9600
 
 #define        BUF_SIZE        RTE_MBUF_DEFAULT_DATAROOM
-#define MBUF_SIZE      \
-       (BUF_SIZE + sizeof(struct rte_mbuf) + RTE_PKTMBUF_HEADROOM)
+#define        MBUF_DATA_SIZE  RTE_MBUF_DEFAULT_BUF_SIZE
 
 #define NB_MBUF 8192
+#define MEMPOOL_CACHE_SIZE 256
 
 /* allow max jumbo frame 9.5 KB */
 #define JUMBO_FRAME_MAX_SIZE   0x2600
@@ -909,11 +909,11 @@ setup_queue_tbl(struct rx_queue *rxq, uint32_t lcore, uint32_t queue)
 
        snprintf(buf, sizeof(buf), "mbuf_pool_%u_%u", lcore, queue);
 
-       if ((rxq->pool = rte_mempool_create(buf, nb_mbuf, MBUF_SIZE, 0,
-                       sizeof(struct rte_pktmbuf_pool_private),
-                       rte_pktmbuf_pool_init, NULL, rte_pktmbuf_init, NULL,
-                       socket, MEMPOOL_F_SP_PUT | MEMPOOL_F_SC_GET)) == NULL) {
-               RTE_LOG(ERR, IP_RSMBL, "mempool_create(%s) failed", buf);
+       rxq->pool = rte_pktmbuf_pool_create(buf, nb_mbuf, MEMPOOL_CACHE_SIZE, 0,
+                                           MBUF_DATA_SIZE, socket);
+       if (rxq->pool == NULL) {
+               RTE_LOG(ERR, IP_RSMBL,
+                       "rte_pktmbuf_pool_create(%s) failed", buf);
                return -1;
        }