[dpdk-dev,v2] i40e: fix build issue for RX set function

Message ID 1458123550-32217-1-git-send-email-zhe.tao@intel.com (mailing list archive)
State Accepted, archived
Delegated to: Bruce Richardson
Headers

Commit Message

Zhe Tao March 16, 2016, 10:19 a.m. UTC
  Issue:
When define CONFIG_RTE_LIBTRE_I40E_RX_ALLOW_BULK_ALLOC as n in config file,
there will be a build error:
'i40e_recv_pkts_bulk_alloc' undeclared 

Now DPDK i40e PMD use the Macro variable to choose whether to define the
related bulk recv functions, but for selection of the RX function,PMD only
depends on a C variable, which will cause the inconsistency and lead to the
build error which will tell us the bulk recv function is not defined.
 
Fixes: 8e109464 (i40e: allow vector Rx and Tx usage)

Signed-off-by: Zhe Tao <zhe.tao@intel.com>
---

V2: fix some characters issues in commit log

 drivers/net/i40e/i40e_rxtx.c | 8 ++++++++
 1 file changed, 8 insertions(+)
  

Comments

Bruce Richardson March 23, 2016, 5:36 p.m. UTC | #1
On Wed, Mar 16, 2016 at 06:19:10PM +0800, Zhe Tao wrote:
> Issue:
> When define CONFIG_RTE_LIBTRE_I40E_RX_ALLOW_BULK_ALLOC as n in config file,
> there will be a build error:
> 'i40e_recv_pkts_bulk_alloc' undeclared 
> 
> Now DPDK i40e PMD use the Macro variable to choose whether to define the
> related bulk recv functions, but for selection of the RX function,PMD only
> depends on a C variable, which will cause the inconsistency and lead to the
> build error which will tell us the bulk recv function is not defined.
>  
> Fixes: 8e109464 (i40e: allow vector Rx and Tx usage)
> 
> Signed-off-by: Zhe Tao <zhe.tao@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>

Applied to dpdk-next-net/rel_16_04

/Bruce
  

Patch

diff --git a/drivers/net/i40e/i40e_rxtx.c b/drivers/net/i40e/i40e_rxtx.c
index 8931b8e..1488f2f 100644
--- a/drivers/net/i40e/i40e_rxtx.c
+++ b/drivers/net/i40e/i40e_rxtx.c
@@ -1175,6 +1175,14 @@  i40e_recv_pkts_bulk_alloc(void *rx_queue,
 
 	return nb_rx;
 }
+#else
+static uint16_t
+i40e_recv_pkts_bulk_alloc(void __rte_unused *rx_queue,
+			  struct rte_mbuf __rte_unused **rx_pkts,
+			  uint16_t __rte_unused nb_pkts)
+{
+	return 0;
+}
 #endif /* RTE_LIBRTE_I40E_RX_ALLOW_BULK_ALLOC */
 
 uint16_t