All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] net/i40e: fix to ensure vector mode is not used
@ 2017-04-11 15:01 Bernard Iremonger
  2017-04-12 11:43 ` Zhang, Qi Z
  2017-04-12 15:28 ` [PATCH v2] " Bernard Iremonger
  0 siblings, 2 replies; 14+ messages in thread
From: Bernard Iremonger @ 2017-04-11 15:01 UTC (permalink / raw)
  To: dev; +Cc: beilei.xing, wenzhuo.lu, qi.zhang, Bernard Iremonger

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: ca74903b75cf ("net/i40e: extract non-x86 specific code from vector driver")

Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com>
---
 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

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PATCH] net/i40e: fix to ensure vector mode is not used
  2017-04-11 15:01 [PATCH] net/i40e: fix to ensure vector mode is not used Bernard Iremonger
@ 2017-04-12 11:43 ` Zhang, Qi Z
  2017-04-12 12:30   ` Iremonger, Bernard
  2017-04-12 15:28 ` [PATCH v2] " Bernard Iremonger
  1 sibling, 1 reply; 14+ messages in thread
From: Zhang, Qi Z @ 2017-04-12 11:43 UTC (permalink / raw)
  To: Iremonger, Bernard, dev
  Cc: Xing, Beilei, Lu, Wenzhuo, Zhang, Qi, Iremonger, Bernard

Hi Bernard:

> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Bernard Iremonger
> Sent: Tuesday, April 11, 2017 11:01 PM
> 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>
> Subject: [dpdk-dev] [PATCH] net/i40e: fix to ensure vector mode is not used
> 
> 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: ca74903b75cf ("net/i40e: extract non-x86 specific code from vector
> driver")

Why fixes? I didn't see above commit change rx callback function if hw_vlan_extend == 1
> 
> Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com>
> ---
>  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

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] net/i40e: fix to ensure vector mode is not used
  2017-04-12 11:43 ` Zhang, Qi Z
@ 2017-04-12 12:30   ` Iremonger, Bernard
  2017-04-12 12:42     ` Zhang, Qi Z
  0 siblings, 1 reply; 14+ messages in thread
From: Iremonger, Bernard @ 2017-04-12 12:30 UTC (permalink / raw)
  To: Zhang, Qi Z, dev; +Cc: Xing, Beilei, Lu, Wenzhuo, Zhang, Qi

Hi Qi,

> -----Original Message-----
> From: Zhang, Qi Z
> Sent: Wednesday, April 12, 2017 12:43 PM
> To: Iremonger, Bernard <bernard.iremonger@intel.com>; 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>
> Subject: RE: [dpdk-dev] [PATCH] net/i40e: fix to ensure vector mode is not
> used
> 
> Hi Bernard:
> 
> > -----Original Message-----
> > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Bernard
> Iremonger
> > Sent: Tuesday, April 11, 2017 11:01 PM
> > 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>
> > Subject: [dpdk-dev] [PATCH] net/i40e: fix to ensure vector mode is not
> > used
> >
> > 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: ca74903b75cf ("net/i40e: extract non-x86 specific code from
> > vector
> > driver")
> 
> Why fixes? I didn't see above commit change rx callback function if
> hw_vlan_extend == 1

Some of the QinQ functionality was introduced in 17.02, this functionality also has the same issue.
So I added a fixes line.

> >
> > Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com>
> > ---
> >  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

Regards,

Bernard.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] net/i40e: fix to ensure vector mode is not used
  2017-04-12 12:30   ` Iremonger, Bernard
@ 2017-04-12 12:42     ` Zhang, Qi Z
  2017-04-12 13:54       ` Iremonger, Bernard
  0 siblings, 1 reply; 14+ messages in thread
From: Zhang, Qi Z @ 2017-04-12 12:42 UTC (permalink / raw)
  To: Iremonger, Bernard, dev; +Cc: Xing, Beilei, Lu, Wenzhuo, Zhang, Qi



> -----Original Message-----
> From: Iremonger, Bernard
> Sent: Wednesday, April 12, 2017 8:30 PM
> To: Zhang, Qi Z <qi.z.zhang@intel.com>; dev@dpdk.org
> Cc: Xing, Beilei <beilei.xing@intel.com>; Lu, Wenzhuo
> <wenzhuo.lu@intel.com>; Zhang, Qi <qi.zhang@intel.com>
> Subject: RE: [dpdk-dev] [PATCH] net/i40e: fix to ensure vector mode is not used
> 
> Hi Qi,
> 
> > -----Original Message-----
> > From: Zhang, Qi Z
> > Sent: Wednesday, April 12, 2017 12:43 PM
> > To: Iremonger, Bernard <bernard.iremonger@intel.com>; 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>
> > Subject: RE: [dpdk-dev] [PATCH] net/i40e: fix to ensure vector mode is
> > not used
> >
> > Hi Bernard:
> >
> > > -----Original Message-----
> > > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Bernard
> > Iremonger
> > > Sent: Tuesday, April 11, 2017 11:01 PM
> > > 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>
> > > Subject: [dpdk-dev] [PATCH] net/i40e: fix to ensure vector mode is
> > > not used
> > >
> > > 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: ca74903b75cf ("net/i40e: extract non-x86 specific code from
> > > vector
> > > driver")
> >
> > Why fixes? I didn't see above commit change rx callback function if
> > hw_vlan_extend == 1
> 
> Some of the QinQ functionality was introduced in 17.02, this functionality also
> has the same issue.
> So I added a fixes line.

If you think this patch is a fix, you need to find the commit that introduce this issue
The commit ca74903b75cf is not the root cause of the issue, it just move the code from 
I40e_rxtx_vec.c to i40e_rxtx_vec_common.h

Regards
Qi
 

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] net/i40e: fix to ensure vector mode is not used
  2017-04-12 12:42     ` Zhang, Qi Z
@ 2017-04-12 13:54       ` Iremonger, Bernard
  2017-04-12 14:07         ` Ferruh Yigit
  0 siblings, 1 reply; 14+ messages in thread
From: Iremonger, Bernard @ 2017-04-12 13:54 UTC (permalink / raw)
  To: Zhang, Qi Z, dev; +Cc: Xing, Beilei, Lu, Wenzhuo, Zhang, Qi

Hi Qi,

<snip>



> > > -----Original Message-----
> > > From: Zhang, Qi Z
> > > Sent: Wednesday, April 12, 2017 12:43 PM
> > > To: Iremonger, Bernard <bernard.iremonger@intel.com>; 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>
> > > Subject: RE: [dpdk-dev] [PATCH] net/i40e: fix to ensure vector mode
> > > is not used
> > >
> > > Hi Bernard:
> > >
> > > > -----Original Message-----
> > > > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Bernard
> > > Iremonger
> > > > Sent: Tuesday, April 11, 2017 11:01 PM
> > > > 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>
> > > > Subject: [dpdk-dev] [PATCH] net/i40e: fix to ensure vector mode is
> > > > not used
> > > >
> > > > 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: ca74903b75cf ("net/i40e: extract non-x86 specific code from
> > > > vector
> > > > driver")
> > >
> > > Why fixes? I didn't see above commit change rx callback function if
> > > hw_vlan_extend == 1
> >
> > Some of the QinQ functionality was introduced in 17.02, this
> > functionality also has the same issue.
> > So I added a fixes line.
> 
> If you think this patch is a fix, you need to find the commit that introduce this
> issue The commit ca74903b75cf is not the root cause of the issue, it just move
> the code from I40e_rxtx_vec.c to i40e_rxtx_vec_common.h
> 
> Regards
> Qi
> 
This is a fix to the  i40e_rx_vec_dev_conf_condition_check_default() function.
The issue is caused because there is no check on the   hw_vlan_extend flag at present.
This is the correct fixline for that function.
ca74903b75 (Jianbo Liu   2016-10-14 09:30:00 +0530 221) i40e_rx_vec_dev_conf_condition_check_default(struct rte_eth_dev *dev)

I will send a v2 as I should have added the "Cc: stable@dpdk.org"  line.

Regards,

Bernard.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] net/i40e: fix to ensure vector mode is not used
  2017-04-12 13:54       ` Iremonger, Bernard
@ 2017-04-12 14:07         ` Ferruh Yigit
  2017-04-12 14:16           ` Zhang, Qi Z
  2017-04-12 14:37           ` Iremonger, Bernard
  0 siblings, 2 replies; 14+ messages in thread
From: Ferruh Yigit @ 2017-04-12 14:07 UTC (permalink / raw)
  To: Iremonger, Bernard, Zhang, Qi Z, dev; +Cc: Xing, Beilei, Lu, Wenzhuo, Zhang, Qi

On 4/12/2017 2:54 PM, Iremonger, Bernard wrote:
> Hi Qi,
> 
> <snip>
> 
> 
> 
>>>> -----Original Message-----
>>>> From: Zhang, Qi Z
>>>> Sent: Wednesday, April 12, 2017 12:43 PM
>>>> To: Iremonger, Bernard <bernard.iremonger@intel.com>; 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>
>>>> Subject: RE: [dpdk-dev] [PATCH] net/i40e: fix to ensure vector mode
>>>> is not used
>>>>
>>>> Hi Bernard:
>>>>
>>>>> -----Original Message-----
>>>>> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Bernard
>>>> Iremonger
>>>>> Sent: Tuesday, April 11, 2017 11:01 PM
>>>>> 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>
>>>>> Subject: [dpdk-dev] [PATCH] net/i40e: fix to ensure vector mode is
>>>>> not used
>>>>>
>>>>> 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: ca74903b75cf ("net/i40e: extract non-x86 specific code from
>>>>> vector
>>>>> driver")
>>>>
>>>> Why fixes? I didn't see above commit change rx callback function if
>>>> hw_vlan_extend == 1
>>>
>>> Some of the QinQ functionality was introduced in 17.02, this
>>> functionality also has the same issue.
>>> So I added a fixes line.
>>
>> If you think this patch is a fix, you need to find the commit that introduce this
>> issue The commit ca74903b75cf is not the root cause of the issue, it just move
>> the code from I40e_rxtx_vec.c to i40e_rxtx_vec_common.h
>>
>> Regards
>> Qi
>>
> This is a fix to the  i40e_rx_vec_dev_conf_condition_check_default() function.
> The issue is caused because there is no check on the   hw_vlan_extend flag at present.
> This is the correct fixline for that function.
> ca74903b75 (Jianbo Liu   2016-10-14 09:30:00 +0530 221) i40e_rx_vec_dev_conf_condition_check_default(struct rte_eth_dev *dev)
> 
> I will send a v2 as I should have added the "Cc: stable@dpdk.org"  line.

Hi Bernard,

I agree with Qi, the commit you are using is just moves function to a
common header, you are not fixing that.

Perhaps fixline can be the commit that adds QinQ support, because it
forgets adding hw_vlan_extend check?

byw, since this common function used by other vector drivers, neon and
altivec, will this something effect them, is there any case
"hw_vlan_extend == 1" but other vector drivers can be used?

Thanks,
ferruh

> 
> Regards,
> 
> Bernard.
> 
> 

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] net/i40e: fix to ensure vector mode is not used
  2017-04-12 14:07         ` Ferruh Yigit
@ 2017-04-12 14:16           ` Zhang, Qi Z
  2017-04-12 15:05             ` Iremonger, Bernard
  2017-04-12 14:37           ` Iremonger, Bernard
  1 sibling, 1 reply; 14+ messages in thread
From: Zhang, Qi Z @ 2017-04-12 14:16 UTC (permalink / raw)
  To: Yigit, Ferruh, Iremonger, Bernard, dev
  Cc: Xing, Beilei, Lu, Wenzhuo, Zhang, Qi

Hi Bernard:

> -----Original Message-----
> From: Yigit, Ferruh
> Sent: Wednesday, April 12, 2017 10:08 PM
> To: Iremonger, Bernard <bernard.iremonger@intel.com>; Zhang, Qi Z
> <qi.z.zhang@intel.com>; dev@dpdk.org
> Cc: Xing, Beilei <beilei.xing@intel.com>; Lu, Wenzhuo
> <wenzhuo.lu@intel.com>; Zhang, Qi <qi.zhang@intel.com>
> Subject: Re: [dpdk-dev] [PATCH] net/i40e: fix to ensure vector mode is not used
> 
> On 4/12/2017 2:54 PM, Iremonger, Bernard wrote:
> > Hi Qi,
> >
> > <snip>
> >
> >
> >
> >>>> -----Original Message-----
> >>>> From: Zhang, Qi Z
> >>>> Sent: Wednesday, April 12, 2017 12:43 PM
> >>>> To: Iremonger, Bernard <bernard.iremonger@intel.com>; 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>
> >>>> Subject: RE: [dpdk-dev] [PATCH] net/i40e: fix to ensure vector mode
> >>>> is not used
> >>>>
> >>>> Hi Bernard:
> >>>>
> >>>>> -----Original Message-----
> >>>>> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Bernard
> >>>> Iremonger
> >>>>> Sent: Tuesday, April 11, 2017 11:01 PM
> >>>>> 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>
> >>>>> Subject: [dpdk-dev] [PATCH] net/i40e: fix to ensure vector mode is
> >>>>> not used
> >>>>>
> >>>>> 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: ca74903b75cf ("net/i40e: extract non-x86 specific code from
> >>>>> vector
> >>>>> driver")
> >>>>
> >>>> Why fixes? I didn't see above commit change rx callback function if
> >>>> hw_vlan_extend == 1
> >>>
> >>> Some of the QinQ functionality was introduced in 17.02, this
> >>> functionality also has the same issue.
> >>> So I added a fixes line.
> >>
> >> If you think this patch is a fix, you need to find the commit that
> >> introduce this issue The commit ca74903b75cf is not the root cause of
> >> the issue, it just move the code from I40e_rxtx_vec.c to
> >> i40e_rxtx_vec_common.h
> >>
> >> Regards
> >> Qi
> >>
> > This is a fix to the  i40e_rx_vec_dev_conf_condition_check_default()
> function.
> > The issue is caused because there is no check on the   hw_vlan_extend flag
> at present.
> > This is the correct fixline for that function.
> > ca74903b75 (Jianbo Liu   2016-10-14 09:30:00 +0530 221)
> i40e_rx_vec_dev_conf_condition_check_default(struct rte_eth_dev *dev)
> >
> > I will send a v2 as I should have added the "Cc: stable@dpdk.org"  line.

I think it should be 
Fixes: 8e109464c02292 ("i40e: allow vector Rx and Tx usage")
This is the first commit after which that QinQ is allowed with vPMD.
> 
> Hi Bernard,
> 
> I agree with Qi, the commit you are using is just moves function to a common
> header, you are not fixing that.
> 
> Perhaps fixline can be the commit that adds QinQ support, because it forgets
> adding hw_vlan_extend check?
> 
> byw, since this common function used by other vector drivers, neon and altivec,
> will this something effect them, is there any case "hw_vlan_extend == 1" but
> other vector drivers can be used?

As I see, neon and altivec follow x86's implementation, they do not support QinQ neither.

> 
> Thanks,
> ferruh
> 
> >
> > Regards,
> >
> > Bernard.
> >
> >


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] net/i40e: fix to ensure vector mode is not used
  2017-04-12 14:07         ` Ferruh Yigit
  2017-04-12 14:16           ` Zhang, Qi Z
@ 2017-04-12 14:37           ` Iremonger, Bernard
  1 sibling, 0 replies; 14+ messages in thread
From: Iremonger, Bernard @ 2017-04-12 14:37 UTC (permalink / raw)
  To: Yigit, Ferruh, Zhang, Qi Z, dev; +Cc: Xing, Beilei, Lu, Wenzhuo, Zhang, Qi

Hi Ferruh,

> -----Original Message-----
> From: Yigit, Ferruh
> Sent: Wednesday, April 12, 2017 3:08 PM
> To: Iremonger, Bernard <bernard.iremonger@intel.com>; Zhang, Qi Z
> <qi.z.zhang@intel.com>; dev@dpdk.org
> Cc: Xing, Beilei <beilei.xing@intel.com>; Lu, Wenzhuo
> <wenzhuo.lu@intel.com>; Zhang, Qi <qi.zhang@intel.com>
> Subject: Re: [dpdk-dev] [PATCH] net/i40e: fix to ensure vector mode is not
> used
> 
> On 4/12/2017 2:54 PM, Iremonger, Bernard wrote:
> > Hi Qi,
> >
> > <snip>
> >
> >
> >
> >>>> -----Original Message-----
> >>>> From: Zhang, Qi Z
> >>>> Sent: Wednesday, April 12, 2017 12:43 PM
> >>>> To: Iremonger, Bernard <bernard.iremonger@intel.com>;
> 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>
> >>>> Subject: RE: [dpdk-dev] [PATCH] net/i40e: fix to ensure vector mode
> >>>> is not used
> >>>>
> >>>> Hi Bernard:
> >>>>
> >>>>> -----Original Message-----
> >>>>> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Bernard
> >>>> Iremonger
> >>>>> Sent: Tuesday, April 11, 2017 11:01 PM
> >>>>> 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>
> >>>>> Subject: [dpdk-dev] [PATCH] net/i40e: fix to ensure vector mode is
> >>>>> not used
> >>>>>
> >>>>> 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: ca74903b75cf ("net/i40e: extract non-x86 specific code from
> >>>>> vector
> >>>>> driver")
> >>>>
> >>>> Why fixes? I didn't see above commit change rx callback function if
> >>>> hw_vlan_extend == 1
> >>>
> >>> Some of the QinQ functionality was introduced in 17.02, this
> >>> functionality also has the same issue.
> >>> So I added a fixes line.
> >>
> >> If you think this patch is a fix, you need to find the commit that
> >> introduce this issue The commit ca74903b75cf is not the root cause of
> >> the issue, it just move the code from I40e_rxtx_vec.c to
> >> i40e_rxtx_vec_common.h
> >>
> >> Regards
> >> Qi
> >>
> > This is a fix to the  i40e_rx_vec_dev_conf_condition_check_default()
> function.
> > The issue is caused because there is no check on the   hw_vlan_extend flag
> at present.
> > This is the correct fixline for that function.
> > ca74903b75 (Jianbo Liu   2016-10-14 09:30:00 +0530 221)
> i40e_rx_vec_dev_conf_condition_check_default(struct rte_eth_dev *dev)
> >
> > I will send a v2 as I should have added the "Cc: stable@dpdk.org"  line.
> 
> Hi Bernard,
> 
> I agree with Qi, the commit you are using is just moves function to a common
> header, you are not fixing that.
> 
> Perhaps fixline can be the commit that adds QinQ support, because it forgets
> adding hw_vlan_extend check?

Ok,  I will use that commit line.
> 
> byw, since this common function used by other vector drivers, neon and
> altivec, will this something effect them, is there any case "hw_vlan_extend
> == 1" but other vector drivers can be used?

The hw_vlan_extend is defined in struct rte_eth_rxmode{}  in rte_ethedev.h so it can be used by other vector drivers.
hw_vlan_extend was handled in this function previously before the following patch
net/i40e: remove option to disable offload flags
commit : 2d7a4ce0806dfdc5b27b280eaf87eeec4848a19f 
> 
> Thanks,
> ferruh
> 
 Regards,

Bernard.


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] net/i40e: fix to ensure vector mode is not used
  2017-04-12 14:16           ` Zhang, Qi Z
@ 2017-04-12 15:05             ` Iremonger, Bernard
  0 siblings, 0 replies; 14+ messages in thread
From: Iremonger, Bernard @ 2017-04-12 15:05 UTC (permalink / raw)
  To: Zhang, Qi Z, Yigit, Ferruh, dev; +Cc: Xing, Beilei, Lu, Wenzhuo, Zhang, Qi

Hi Qi,

<snip>
> >
> > >>>> -----Original Message-----
> > >>>> From: Zhang, Qi Z
> > >>>> Sent: Wednesday, April 12, 2017 12:43 PM
> > >>>> To: Iremonger, Bernard <bernard.iremonger@intel.com>;
> > >>>> 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>
> > >>>> Subject: RE: [dpdk-dev] [PATCH] net/i40e: fix to ensure vector
> > >>>> mode is not used
> > >>>>
> > >>>> Hi Bernard:
> > >>>>
> > >>>>> -----Original Message-----
> > >>>>> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Bernard
> > >>>> Iremonger
> > >>>>> Sent: Tuesday, April 11, 2017 11:01 PM
> > >>>>> 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>
> > >>>>> Subject: [dpdk-dev] [PATCH] net/i40e: fix to ensure vector mode
> > >>>>> is not used
> > >>>>>
> > >>>>> 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: ca74903b75cf ("net/i40e: extract non-x86 specific code
> > >>>>> from vector
> > >>>>> driver")
> > >>>>
> > >>>> Why fixes? I didn't see above commit change rx callback function
> > >>>> if hw_vlan_extend == 1
> > >>>
> > >>> Some of the QinQ functionality was introduced in 17.02, this
> > >>> functionality also has the same issue.
> > >>> So I added a fixes line.
> > >>
> > >> If you think this patch is a fix, you need to find the commit that
> > >> introduce this issue The commit ca74903b75cf is not the root cause
> > >> of the issue, it just move the code from I40e_rxtx_vec.c to
> > >> i40e_rxtx_vec_common.h
> > >>
> > >> Regards
> > >> Qi
> > >>
> > > This is a fix to the  i40e_rx_vec_dev_conf_condition_check_default()
> > function.
> > > The issue is caused because there is no check on the   hw_vlan_extend
> flag
> > at present.
> > > This is the correct fixline for that function.
> > > ca74903b75 (Jianbo Liu   2016-10-14 09:30:00 +0530 221)
> > i40e_rx_vec_dev_conf_condition_check_default(struct rte_eth_dev
> *dev)
> > >
> > > I will send a v2 as I should have added the "Cc: stable@dpdk.org"  line.
> 
> I think it should be
> Fixes: 8e109464c02292 ("i40e: allow vector Rx and Tx usage") This is the first
> commit after which that QinQ is allowed with vPMD.

Or should it be the following commit, when it is used for QinQ?

Fixes: 5b2d37858d32 ("net/i40e: fix single VLAN tag to be outer VLAN tag")

> >
> > Hi Bernard,
> >
> > I agree with Qi, the commit you are using is just moves function to a
> > common header, you are not fixing that.
> >
> > Perhaps fixline can be the commit that adds QinQ support, because it
> > forgets adding hw_vlan_extend check?
> >
> > byw, since this common function used by other vector drivers, neon and
> > altivec, will this something effect them, is there any case
> > "hw_vlan_extend == 1" but other vector drivers can be used?
> 
> As I see, neon and altivec follow x86's implementation, they do not support
> QinQ neither.
> 
> >
> > Thanks,
> > ferruh
> >
> > >
> > > Regards,
> > >
> > > Bernard.
> > >
> > >
Regards,

Bernard.


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH v2] net/i40e: fix to ensure vector mode is not used
  2017-04-11 15:01 [PATCH] net/i40e: fix to ensure vector mode is not used Bernard Iremonger
  2017-04-12 11:43 ` Zhang, Qi Z
@ 2017-04-12 15:28 ` Bernard Iremonger
  2017-04-13  9:53   ` [PATCH v3] " Bernard Iremonger
  1 sibling, 1 reply; 14+ messages in thread
From: Bernard Iremonger @ 2017-04-12 15:28 UTC (permalink / raw)
  To: dev; +Cc: beilei.xing, wenzhuo.lu, qi.zhang, Bernard Iremonger, stable

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: stable@dpdk.org

Signed-off-by: Bernard Iremonger <bernard.iremonger@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

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH v3] net/i40e: fix to ensure vector mode is not used
  2017-04-12 15:28 ` [PATCH v2] " Bernard Iremonger
@ 2017-04-13  9:53   ` Bernard Iremonger
  2017-04-18  9:58     ` Ananyev, Konstantin
  0 siblings, 1 reply; 14+ messages in thread
From: Bernard Iremonger @ 2017-04-13  9:53 UTC (permalink / raw)
  To: dev; +Cc: beilei.xing, wenzhuo.lu, qi.zhang, Bernard Iremonger, stable

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

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

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PATCH v3] net/i40e: fix to ensure vector mode is not used
  2017-04-13  9:53   ` [PATCH v3] " Bernard Iremonger
@ 2017-04-18  9:58     ` Ananyev, Konstantin
  2017-04-18 10:04       ` [dpdk-stable] " Ferruh Yigit
  0 siblings, 1 reply; 14+ messages in thread
From: Ananyev, Konstantin @ 2017-04-18  9:58 UTC (permalink / raw)
  To: Iremonger, Bernard, dev
  Cc: Xing, Beilei, Lu, Wenzhuo, Zhang, Qi, Iremonger, Bernard, stable



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

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [dpdk-stable] [PATCH v3] net/i40e: fix to ensure vector mode is not used
  2017-04-18  9:58     ` Ananyev, Konstantin
@ 2017-04-18 10:04       ` Ferruh Yigit
  2017-04-19 13:10         ` Ferruh Yigit
  0 siblings, 1 reply; 14+ messages in thread
From: Ferruh Yigit @ 2017-04-18 10:04 UTC (permalink / raw)
  To: Ananyev, Konstantin, Iremonger, Bernard, dev
  Cc: Xing, Beilei, Lu, Wenzhuo, Zhang, Qi, stable

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.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [dpdk-stable] [PATCH v3] net/i40e: fix to ensure vector mode is not used
  2017-04-18 10:04       ` [dpdk-stable] " Ferruh Yigit
@ 2017-04-19 13:10         ` Ferruh Yigit
  0 siblings, 0 replies; 14+ messages in thread
From: Ferruh Yigit @ 2017-04-19 13:10 UTC (permalink / raw)
  To: Ananyev, Konstantin, Iremonger, Bernard, dev
  Cc: Xing, Beilei, Lu, Wenzhuo, Zhang, Qi, stable

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

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2017-04-19 13:10 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-04-11 15:01 [PATCH] net/i40e: fix to ensure vector mode is not used Bernard Iremonger
2017-04-12 11:43 ` Zhang, Qi Z
2017-04-12 12:30   ` Iremonger, Bernard
2017-04-12 12:42     ` Zhang, Qi Z
2017-04-12 13:54       ` Iremonger, Bernard
2017-04-12 14:07         ` Ferruh Yigit
2017-04-12 14:16           ` Zhang, Qi Z
2017-04-12 15:05             ` Iremonger, Bernard
2017-04-12 14:37           ` Iremonger, Bernard
2017-04-12 15:28 ` [PATCH v2] " Bernard Iremonger
2017-04-13  9:53   ` [PATCH v3] " Bernard Iremonger
2017-04-18  9:58     ` Ananyev, Konstantin
2017-04-18 10:04       ` [dpdk-stable] " Ferruh Yigit
2017-04-19 13:10         ` Ferruh Yigit

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.