[dpdk-stable] [dpdk-dev] [PATCH] app/testpmd: fix offloads default set error

Zhao1, Wei wei.zhao1 at intel.com
Tue Jun 11 03:31:36 CEST 2019


"If we take that propose, it means we do not need any patch at all."
Sorry for typo.

> -----Original Message-----
> From: Zhao1, Wei
> Sent: Tuesday, June 11, 2019 9:29 AM
> To: 'Kevin Traynor' <ktraynor at redhat.com>; dev at dpdk.org
> Cc: stable at dpdk.org; Yigit, Ferruh <ferruh.yigit at intel.com>
> Subject: RE: [dpdk-dev] [PATCH] app/testpmd: fix offloads default set error
> 
> Hi,  Kevin Traynor
> 	This patch is based on Yigit Ferruh's suggestion in the following mail.
> https://mails.dpdk.org/archives/dev/2019-May/132178.html
> If we take your propose, it means we do need any patch at all.
> Because the code implement now is just that scheme, we will do "or" for
> offloads.
> Hello Ferruh,What is your comment?
> 
> > -----Original Message-----
> > From: Kevin Traynor [mailto:ktraynor at redhat.com]
> > Sent: Monday, June 10, 2019 6:10 PM
> > To: Zhao1, Wei <wei.zhao1 at intel.com>; dev at dpdk.org
> > Cc: stable at dpdk.org; Yigit, Ferruh <ferruh.yigit at intel.com>
> > Subject: Re: [dpdk-dev] [PATCH] app/testpmd: fix offloads default set
> > error
> >
> > On 10/06/2019 07:45, Wei Zhao wrote:
> > > There is no need to use default offloads configuration if offloads
> > > configuration has been pass down from uplayer.
> > >
> >
> > It doesn't seem like the right fix to me. It means if a user
> > enable/disable one offload in the command line they are silently
> > changing from the default behaviour of other offloads? I could
> > understand if the user set all offloads in one go through a mask but not when
> they are set seemingly independent.
> >
> > It looks like you need to track which ones have been enabled/disabled
> > by the user, and use the default for for the other offloads.
> >
> > > Fixes: 5e91aeef218c ("app/testpmd: fix offload flags after port
> > > config")
> > >
> > > Signed-off-by: Wei Zhao <wei.zhao1 at intel.com>
> > > ---
> > >  app/test-pmd/testpmd.c | 6 ++++--
> > >  1 file changed, 4 insertions(+), 2 deletions(-)
> > >
> > > diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c index
> > > 0148b0a..b5f5801 100644
> > > --- a/app/test-pmd/testpmd.c
> > > +++ b/app/test-pmd/testpmd.c
> > > @@ -2815,7 +2815,8 @@ rxtx_port_config(struct rte_port *port)
> > >  	for (qid = 0; qid < nb_rxq; qid++) {
> > >  		offloads = port->rx_conf[qid].offloads;
> > >  		port->rx_conf[qid] = port->dev_info.default_rxconf;
> > > -		port->rx_conf[qid].offloads |= offloads;
> > > +		if (offloads)
> > > +			port->rx_conf[qid].offloads = offloads;
> > >
> > >  		/* Check if any Rx parameters have been passed */
> > >  		if (rx_pthresh != RTE_PMD_PARAM_UNSET) @@ -2839,7
> > +2840,8 @@
> > > rxtx_port_config(struct rte_port *port)
> > >  	for (qid = 0; qid < nb_txq; qid++) {
> > >  		offloads = port->tx_conf[qid].offloads;
> > >  		port->tx_conf[qid] = port->dev_info.default_txconf;
> > > -		port->tx_conf[qid].offloads |= offloads;
> > > +		if (offloads)
> > > +			port->tx_conf[qid].offloads = offloads;
> > >
> > >  		/* Check if any Tx parameters have been passed */
> > >  		if (tx_pthresh != RTE_PMD_PARAM_UNSET)
> > >



More information about the stable mailing list