diff --git a/config/common_base b/config/common_base index 439f3cc..12b71e9 100644 --- a/config/common_base +++ b/config/common_base @@ -220,7 +220,7 @@ CONFIG_RTE_LIBRTE_MLX4_TX_MP_CACHE=8 # # Compile burst-oriented Mellanox ConnectX-4 & ConnectX-5 (MLX5) PMD # -CONFIG_RTE_LIBRTE_MLX5_PMD=n +CONFIG_RTE_LIBRTE_MLX5_PMD=y CONFIG_RTE_LIBRTE_MLX5_DEBUG=n CONFIG_RTE_LIBRTE_MLX5_TX_MP_CACHE=8 diff --git a/examples/load_balancer/runtime.c b/examples/load_balancer/runtime.c index e54b785..d448100 100644 --- a/examples/load_balancer/runtime.c +++ b/examples/load_balancer/runtime.c @@ -41,6 +41,7 @@ #include #include #include +#include #include #include @@ -133,6 +134,8 @@ app_lcore_io_rx_buffer_to_send ( uint32_t pos; int ret; + rte_pktmbuf_refcnt_update(mbuf, 1); + pos = lp->rx.mbuf_out[worker].n_mbufs; lp->rx.mbuf_out[worker].array[pos ++] = mbuf; if (likely(pos < bsz)) { @@ -521,6 +524,8 @@ app_lcore_worker( continue; #endif + usleep(20); + APP_WORKER_PREFETCH1(rte_pktmbuf_mtod(lp->mbuf_in.array[0], unsigned char *)); APP_WORKER_PREFETCH0(lp->mbuf_in.array[1]); @@ -530,6 +535,8 @@ app_lcore_worker( uint32_t ipv4_dst, pos; uint32_t port; + rte_pktmbuf_free(lp->mbuf_in.array[j]); + if (likely(j < bsz_rd - 1)) { APP_WORKER_PREFETCH1(rte_pktmbuf_mtod(lp->mbuf_in.array[j+1], unsigned char *)); }