2017-02-12 04:34, Wu, Jingjing:
> > > > --- a/app/test-pmd/testpmd.c
> > > > +++ b/app/test-pmd/testpmd.c
> > > > @@ -1490,13 +1490,13 @@ stop_port(portid_t pid)
> > > >                         continue;
> > > >                 }
> > > >
> > > > +               rte_eth_dev_stop(pi);
> > > > +
> > > >                 port = &ports[pi];
> > > >                 if (rte_atomic16_cmpset(&(port->port_status),
> > > > RTE_PORT_STARTED,
> > > >                                                 RTE_PORT_HANDLING) == 0)
> > > >                         continue;
> > > >
> > > > -               rte_eth_dev_stop(pi);
> > > > -
> > >
> > > I don't think this fix is correct to move rte_eth_dev_stop above.
> > >
> > > We need to make sure rte_eth_dev_start is called in start_port. For
> > > vmdq configuration, You just need to change the configuration when
> > > port is stopped.
> > 
> > I think the stop_port() function should always stop the port even if the
> > port_status is not correct for any reason.
> > At present stop_port() returns without stopping the port if the port_status 
> > is not
> > RTE_PORT_STARTED.
> >
> This is testpmd's design. If you think it is an issue, maybe you need to 
> prepare patch to optimize it. But for VMDQ configuration, I'd like to make it 
> independent but not mixed.
>  
> > The VMDq configuration is done whet the port is stopped, however to the
> > complete the VMDq configuration the port must be started.
> > 
> 
> To change minor, we can stop port, then configure VMDQ and then start port.
> 
> You make port started in VMDQ config, the Symmetry of stop/start command is 
> broken and it is not easy to maintain.

Should we close this patch in patchwork?

Reply via email to