In rx vector mode, the QinQ VLAN tag is not stripped.
When hw_vlan_extend is set for QinQ ensure that
rx vector mode is not selected.

Fixes: 5b2d37858d32 ("net/i40e: fix single VLAN tag to be outer VLAN tag")
Cc: sta...@dpdk.org

Signed-off-by: Bernard Iremonger <bernard.iremon...@intel.com>
---
 Changes in v2:
 Rebased to latest dpdk-next-net
 Updated Fixes line.
 Added  Cc: line

 drivers/net/i40e/i40e_rxtx_vec_common.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/net/i40e/i40e_rxtx_vec_common.h 
b/drivers/net/i40e/i40e_rxtx_vec_common.h
index 952fd4b63..692096684 100644
--- a/drivers/net/i40e/i40e_rxtx_vec_common.h
+++ b/drivers/net/i40e/i40e_rxtx_vec_common.h
@@ -234,6 +234,10 @@ i40e_rx_vec_dev_conf_condition_check_default(struct 
rte_eth_dev *dev)
        if (rxmode->header_split == 1)
                return -1;
 
+       /* no QinQ support */
+       if (rxmode->hw_vlan_extend == 1)
+               return -1;
+
        return 0;
 #else
        RTE_SET_USED(dev);
-- 
2.11.0

Reply via email to