[dpdk-dev,v3] net/i40e: fix to ensure vector mode is not used

Message ID 1492077185-11199-1-git-send-email-bernard.iremonger@intel.com (mailing list archive)
State Accepted, archived
Delegated to: Ferruh Yigit
Headers

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Iremonger, Bernard April 13, 2017, 9:53 a.m. UTC
  In rx vector mode, QinQ is not supported.
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: stable@dpdk.org

Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com>
---
 Changes in v3:
 Rebased to latest dpdk-next-net
 Revised commit message.

 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(+)
  

Comments

Ananyev, Konstantin April 18, 2017, 9:58 a.m. UTC | #1
> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Bernard Iremonger
> Sent: Thursday, April 13, 2017 10:53 AM
> To: dev@dpdk.org
> Cc: Xing, Beilei <beilei.xing@intel.com>; Lu, Wenzhuo <wenzhuo.lu@intel.com>; Zhang, Qi <qi.zhang@intel.com>; Iremonger, Bernard
> <bernard.iremonger@intel.com>; stable@dpdk.org
> Subject: [dpdk-dev] [PATCH v3] net/i40e: fix to ensure vector mode is not used
> 
> In rx vector mode, QinQ is not supported.
> 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: stable@dpdk.org
> 
> Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com>
> ---
>  Changes in v3:
>  Rebased to latest dpdk-next-net
>  Revised commit message.
> 
>  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(+)
> 

Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
  
Ferruh Yigit April 18, 2017, 10:04 a.m. UTC | #2
On 4/18/2017 10:58 AM, Ananyev, Konstantin wrote:
> 
> 
>> -----Original Message-----
>> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Bernard Iremonger
>> Sent: Thursday, April 13, 2017 10:53 AM
>> To: dev@dpdk.org
>> Cc: Xing, Beilei <beilei.xing@intel.com>; Lu, Wenzhuo <wenzhuo.lu@intel.com>; Zhang, Qi <qi.zhang@intel.com>; Iremonger, Bernard
>> <bernard.iremonger@intel.com>; stable@dpdk.org
>> Subject: [dpdk-dev] [PATCH v3] net/i40e: fix to ensure vector mode is not used
>>
>> In rx vector mode, QinQ is not supported.
>> 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: stable@dpdk.org
>>
>> Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com>

> Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>

Applied to dpdk-next-net/master, thanks.
  
Ferruh Yigit April 19, 2017, 1:10 p.m. UTC | #3
On 4/18/2017 11:04 AM, Ferruh Yigit wrote:
> On 4/18/2017 10:58 AM, Ananyev, Konstantin wrote:
>>
>>
>>> -----Original Message-----
>>> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Bernard Iremonger
>>> Sent: Thursday, April 13, 2017 10:53 AM
>>> To: dev@dpdk.org
>>> Cc: Xing, Beilei <beilei.xing@intel.com>; Lu, Wenzhuo <wenzhuo.lu@intel.com>; Zhang, Qi <qi.zhang@intel.com>; Iremonger, Bernard
>>> <bernard.iremonger@intel.com>; stable@dpdk.org
>>> Subject: [dpdk-dev] [PATCH v3] net/i40e: fix to ensure vector mode is not used
>>>
>>> In rx vector mode, QinQ is not supported.
>>> 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: stable@dpdk.org
>>>
>>> Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com>
> 
>> Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
> 
> Applied to dpdk-next-net/master, thanks.
> 

Updated Fixes line to:
Fixes: 8e109464c022 ("i40e: allow vector Rx and Tx usage")
  

Patch

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);