[dpdk-dev] [PATCH v2] drivers/net/i40e/i40e_ethdev_vf.c: fix missing promiscuous disable at device stop

Zhang, Helin helin.zhang at intel.com
Thu Mar 29 07:10:47 CEST 2018



> -----Original Message-----
> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Zhang, Qi Z
> Sent: Friday, March 16, 2018 2:25 PM
> To: Xu, Rosen; Xing, Beilei
> Cc: dev at dpdk.org
> Subject: Re: [dpdk-dev] [PATCH v2] drivers/net/i40e/i40e_ethdev_vf.c: fix
> missing promiscuous disable at device stop
> 
> Hi Rosen:
> 
> > -----Original Message-----
> > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Rosen Xu
> > Sent: Thursday, March 15, 2018 5:46 PM
> > To: Xing, Beilei <beilei.xing at intel.com>
> > Cc: dev at dpdk.org
> > Subject: [dpdk-dev] [PATCH v2] drivers/net/i40e/i40e_ethdev_vf.c: fix
> > missing promiscuous disable at device stop
> >
> > In scenario of Kernel Driver runs on PF and PMD runs on VF, PMD exit
> > doesn't disable promiscuous mode, this will cause vlan filter set by
> > Kernel Driver will not take effect.
> >
> > This patch will fix it, add promiscuous disable at device stop.
> >
> > Signed-off-by: Rosen Xu <rosen.xu at intel.com>
> > ---
> >  drivers/net/i40e/i40e_ethdev_vf.c | 2 ++
> >  1 file changed, 2 insertions(+)
> >
> > diff --git a/drivers/net/i40e/i40e_ethdev_vf.c
> > b/drivers/net/i40e/i40e_ethdev_vf.c
> > index fd003fe..f395b02 100644
> > --- a/drivers/net/i40e/i40e_ethdev_vf.c
> > +++ b/drivers/net/i40e/i40e_ethdev_vf.c
> > @@ -2051,6 +2051,8 @@ static int eth_i40evf_pci_remove(struct
> > rte_pci_device *pci_dev)
> >
> >  	if (hw->adapter_stopped == 1)
> >  		return;
> > +	i40evf_dev_promiscuous_disable(dev);
> > +	i40evf_dev_allmulticast_disable(dev);
> 
> Device's promiscuous mode is not expected to be changed in a
> dev_start/dev_stop cycle Application need to call
> rte_eth_promiscuous_disable and i40evf_dev_allmulticast_disable to change it
> explicitly.
> 
> Regards
> Qi

Basically I'd reject your patch, based on the comments Qi made above.

/Helin
> 
> >  	i40evf_stop_queues(dev);
> >  	i40evf_disable_queues_intr(dev);
> >  	i40e_dev_clear_queues(dev);
> > --
> > 1.8.3.1



More information about the dev mailing list