Put to mempool does not free chained segments.

Fixes: e0b063941e03 ("net/sfc: support scattered Rx DMA")
Cc: sta...@dpdk.org

Signed-off-by: Andrew Rybchenko <arybche...@solarflare.com>
---
 drivers/net/sfc/sfc_rx.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/net/sfc/sfc_rx.c b/drivers/net/sfc/sfc_rx.c
index eef4ce0..fe54e6d 100644
--- a/drivers/net/sfc/sfc_rx.c
+++ b/drivers/net/sfc/sfc_rx.c
@@ -282,8 +282,7 @@ sfc_efx_recv_pkts(void *rx_queue, struct rte_mbuf 
**rx_pkts, uint16_t nb_pkts)
 
                if (scatter_pkt != NULL) {
                        if (rte_pktmbuf_chain(scatter_pkt, m) != 0) {
-                               rte_mempool_put(rxq->refill_mb_pool,
-                                               scatter_pkt);
+                               rte_pktmbuf_free(scatter_pkt);
                                goto discard;
                        }
                        /* The packet to deliver */
-- 
2.9.3

Reply via email to