[dpdk-dev] [PATCH] app/testpmd: do not enable Rx offloads by default

Thomas Monjalon thomas at monjalon.net
Fri Jan 26 09:35:47 CET 2018


26/01/2018 09:06, Lu, Wenzhuo:
> From: Thomas Monjalon [mailto:thomas at monjalon.net]
> > 26/01/2018 08:30, Lu, Wenzhuo:
> > > From: Thomas Monjalon [mailto:thomas at monjalon.net]
> > > > 25/01/2018 02:11, Lu, Wenzhuo:
> > > > > > --- a/app/test-pmd/testpmd.c
> > > > > > +++ b/app/test-pmd/testpmd.c
> > > > > > @@ -305,9 +305,7 @@ struct fwd_engine * fwd_engines[] = {
> > > > > >   */
> > > > > >  struct rte_eth_rxmode rx_mode = {
> > > > > >  	.max_rx_pkt_len = ETHER_MAX_LEN, /**< Default maximum
> > frame
> > > > > > length. */
> > > > > > -	.offloads = (DEV_RX_OFFLOAD_VLAN_FILTER |
> > > > > > -		     DEV_RX_OFFLOAD_VLAN_STRIP |
> > > > > > -		     DEV_RX_OFFLOAD_CRC_STRIP),
> > > > > > +	.offloads = 0,
> > > > >
> > > > > Change the default behavior may trigger other problems. I think TX
> > > > > offload
> > > > could be a good reference. Get the capability and check what's
> > > > supported first, then ignore the not supported functions with
> > > > printing a warning but not block anything...
> > > >
> > > > I agree that we should check the capabilities before requesting an offload.
> > > > But I disagree on another point: we should not enable an offload if
> > > > the user did not request it explicitly. It makes things unclear.
> > > > This is a testing tool, it should be close to the ethdev API behavior.
> > > >
> > > > Why these offload flags are silently enabled?
> > >
> > > I don't think it's silently. It's a global configuration. In this case, testpmd is
> > the user, it does request it explicitly. If it's not so explicit, maybe we can
> > consider moving all the configuration to a specific configure file.
> > > Talking about why it's enabled by default. Hard to figure out the history.
> > To my opinion, the original designer wants to simulate the common case.
> > 
> > Please do not justify a design mistake by history.
> > 
> > This is a test tool, so we don't care about the common case.
> > A test tool should not try to guess the best configuration.
> > Only the user should decide the configuration to apply, and the default
> > should be empty, as the API is.
> 
> I see the divergence. You think testpmd is a tool, so it should be white paper as the tool users may suppose it is.
> I think testpmd is an example to let the APP developers know how to use DPDK. So any pre-configuration is acceptable.

Ah ah ah :)
No
Examples are in examples/ directory.


More information about the dev mailing list