From abd41e3d004746753d9198b3896bcb919f601167 Mon Sep 17 00:00:00 2001 From: Xiaoyun Wang Date: Fri, 1 Nov 2019 21:36:44 +0800 Subject: [PATCH] net/hinic: optimize mbuf allocation When port start, driver needs to alloc mbuf resource to fill Rx queue bd section, replace rte_mbuf_raw_alloc function to rte_pktmbuf_alloc_bulk with initialized mbuf structure to avoid some structures being used without initialization. Signed-off-by: Xiaoyun Wang --- drivers/net/hinic/hinic_pmd_rx.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/net/hinic/hinic_pmd_rx.c b/drivers/net/hinic/hinic_pmd_rx.c index 743bae9693..f865f2f470 100644 --- a/drivers/net/hinic/hinic_pmd_rx.c +++ b/drivers/net/hinic/hinic_pmd_rx.c @@ -853,10 +853,11 @@ static inline u32 hinic_rx_alloc_mbuf_bulk(struct hinic_rxq *rxq, static struct rte_mbuf *hinic_rx_alloc_mbuf(struct hinic_rxq *rxq, dma_addr_t *dma_addr) { - struct rte_mbuf *mbuf; + struct rte_mbuf *mbuf = NULL; + int rc; - mbuf = rte_mbuf_raw_alloc(rxq->mb_pool); - if (unlikely(!mbuf)) + rc = rte_pktmbuf_alloc_bulk(rxq->mb_pool, &mbuf, 1); + if (unlikely(rc != HINIC_OK)) return NULL; *dma_addr = rte_mbuf_data_iova_default(mbuf); -- 2.20.1