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

Iremonger, Bernard bernard.iremonger at intel.com
Wed Apr 12 17:05:41 CEST 2017


Hi Qi,

<snip>
> >
> > >>>> -----Original Message-----
> > >>>> From: Zhang, Qi Z
> > >>>> Sent: Wednesday, April 12, 2017 12:43 PM
> > >>>> To: Iremonger, Bernard <bernard.iremonger at intel.com>;
> > >>>> dev at dpdk.org
> > >>>> Cc: Xing, Beilei <beilei.xing at intel.com>; Lu, Wenzhuo
> > >>>> <wenzhuo.lu at intel.com>; Zhang, Qi <qi.zhang at intel.com>;
> > >>>> Iremonger, Bernard <bernard.iremonger at 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 at dpdk.org] On Behalf Of Bernard
> > >>>> Iremonger
> > >>>>> Sent: Tuesday, April 11, 2017 11:01 PM
> > >>>>> To: dev at dpdk.org
> > >>>>> Cc: Xing, Beilei <beilei.xing at intel.com>; Lu, Wenzhuo
> > >>>>> <wenzhuo.lu at intel.com>; Zhang, Qi <qi.zhang at intel.com>;
> > >> Iremonger,
> > >>>>> Bernard <bernard.iremonger at 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 at 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.



More information about the dev mailing list