From cddae880b69155f76efa3241d02437fc69fade45 Mon Sep 17 00:00:00 2001 From: Vlad Zolotarov Date: Wed, 29 Apr 2015 11:38:17 +0300 Subject: [PATCH] ixgbe: use scattered Rx with bulk allocation Simply initialze rx_pkt_burst callback to ixgbe_recv_pkts_lro_bulk_alloc() if the conditions are right. This is possible because work against HW in LRO and scattered cases is exactly the same and LRO callback already supports the bulk allocation. Signed-off-by: Vlad Zolotarov Acked-by: Konstantin Ananyev --- lib/librte_pmd_ixgbe/ixgbe_rxtx.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/librte_pmd_ixgbe/ixgbe_rxtx.c b/lib/librte_pmd_ixgbe/ixgbe_rxtx.c index e3cf4fcbb6..57c9430e72 100644 --- a/lib/librte_pmd_ixgbe/ixgbe_rxtx.c +++ b/lib/librte_pmd_ixgbe/ixgbe_rxtx.c @@ -3780,6 +3780,11 @@ void ixgbe_set_rx_function(struct rte_eth_dev *dev) dev->data->port_id); dev->rx_pkt_burst = ixgbe_recv_scattered_pkts_vec; + } else if (adapter->rx_bulk_alloc_allowed) { + PMD_INIT_LOG(INFO, "Using a Scattered with bulk " + "allocation callback (port=%d).", + dev->data->port_id); + dev->rx_pkt_burst = ixgbe_recv_pkts_lro_bulk_alloc; } else { PMD_INIT_LOG(DEBUG, "Using Regualr (non-vector, " "single allocation) " -- 2.20.1