Merged,
Maxim.

On 08/19/16 17:52, Bill Fischofer wrote:
On Wed, Aug 17, 2016 at 4:59 AM, Matias Elo <[email protected]> wrote:

DPDK 16.07 finally supports freeing memory pools.

Signed-off-by: Matias Elo <[email protected]>

Reviewed-by: Bill Fischofer <[email protected]>


---
  platform/linux-generic/pktio/dpdk.c | 13 +++++--------
  1 file changed, 5 insertions(+), 8 deletions(-)

diff --git a/platform/linux-generic/pktio/dpdk.c b/platform/linux-generic/
pktio/dpdk.c
index bf8b499..b45c9a8 100644
--- a/platform/linux-generic/pktio/dpdk.c
+++ b/platform/linux-generic/pktio/dpdk.c
@@ -390,6 +390,8 @@ static int dpdk_close(pktio_entry_t *pktio_entry)
         if (pktio_entry->s.state != PKTIO_STATE_OPENED)
                 rte_eth_dev_close(pkt_dpdk->port_id);

+       rte_mempool_free(pkt_dpdk->pkt_pool);
+
         return 0;
  }

@@ -650,14 +652,9 @@ static int dpdk_open(odp_pktio_t id ODP_UNUSED,
         else
                 pkt_dpdk->min_rx_burst = 0;

-       /* Look for previously opened packet pool */
-       pkt_pool = rte_mempool_lookup(pkt_dpdk->pool_name);
-       if (pkt_pool == NULL)
-               pkt_pool = rte_pktmbuf_pool_create(pkt_dpdk->pool_name,
-                                                  DPDK_NB_MBUF,
-
DPDK_MEMPOOL_CACHE_SIZE, 0,
-                                                  DPDK_MBUF_BUF_SIZE,
-                                                  rte_socket_id());
+       pkt_pool = rte_pktmbuf_pool_create(pkt_dpdk->pool_name,
DPDK_NB_MBUF,
+                                          DPDK_MEMPOOL_CACHE_SIZE, 0,
+                                          DPDK_MBUF_BUF_SIZE,
rte_socket_id());
         if (pkt_pool == NULL) {
                 ODP_ERR("Cannot init mbuf packet pool\n");
                 return -1;
--
2.7.4



Reply via email to