[dpdk-dev] [PATCH 3/3] net/i40e: fix inadvertent override of vector RX allowance
Ergin, Mesut A
mesut.a.ergin at intel.com
Thu May 23 20:25:55 CEST 2019
Hi Qi,
> -----Original Message-----
> From: Zhang, Qi Z
> Sent: Wednesday, May 22, 2019 5:42 AM
> To: Ergin, Mesut A <mesut.a.ergin at intel.com>; Xing, Beilei
> <beilei.xing at intel.com>
> Cc: dev at dpdk.org
> Subject: RE: [PATCH 3/3] net/i40e: fix inadvertent override of vector RX
> allowance
>
> Hi Mesut:
>
> > -----Original Message-----
> > From: Ergin, Mesut A
> > Sent: Thursday, May 16, 2019 12:28 PM
> > To: Xing, Beilei <beilei.xing at intel.com>; Zhang, Qi Z <qi.z.zhang at intel.com>
> > Cc: dev at dpdk.org; Ergin, Mesut A <mesut.a.ergin at intel.com>
> > Subject: [PATCH 3/3] net/i40e: fix inadvertent override of vector RX allowance
> >
> > When i40e_rx_vec_dev_conf_condition_check_default() determines whether
> > vector receive functions would be allowed during initialization phase, it should
> > honor previously recorded disallowance during configuration phase, and not
> > override simply because it is for the first queue.
> >
> > Signed-off-by: Mesut Ali Ergin <mesut.a.ergin at 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 0e6ffa0..f30cab4 100644
> > --- a/drivers/net/i40e/i40e_rxtx_vec_common.h
> > +++ b/drivers/net/i40e/i40e_rxtx_vec_common.h
> > @@ -212,6 +212,10 @@
> > i40e_rx_vec_dev_conf_condition_check_default(struct rte_eth_dev *dev)
> > if (rxmode->offloads & DEV_RX_OFFLOAD_VLAN_EXTEND)
> > return -1;
> >
> > + /* Should not override if vector was already disallowed */
>
> It is possible a device be reconfigured between dev_stop/dev_start, vector
> mode may fit for the new configure, so the old rx_vec_allowd should be
> ignored,
>
i40e_dev_configure would reset rx_vec_allowed already. Am I missing
another reconfiguration path?
Mesut
> Regards
> Qi
>
> > + if (!ad->rx_vec_allowed)
> > + return -1;
> > +
> > /**
> > * Vector mode is allowed only when number of Rx queue
> > * descriptor is power of 2.
> > --
> > 2.7.4
More information about the dev
mailing list