[dpdk-dev] [PATCH] igb_uio: remove PCI reset during uio device open

Yang, Qiming qiming.yang at intel.com
Fri Sep 22 04:47:35 CEST 2017


> -----Original Message-----
> From: Shijith Thotton [mailto:shijith.thotton at caviumnetworks.com]
> Sent: Tuesday, September 19, 2017 6:24 PM
> To: dev at dpdk.org
> Cc: Yigit, Ferruh <ferruh.yigit at intel.com>; Thomas Monjalon
> <thomas at monjalon.net>; Yang, Qiming <qiming.yang at intel.com>; Patil, Harish
> <Harish.Patil at cavium.com>; Zhang, Helin <helin.zhang at intel.com>; Gregory
> Etelson <gregory at weka.io>; Tan, Jianfeng <jianfeng.tan at intel.com>; Hu,
> Xuekun <xuekun.hu at intel.com>; Li, Xiaoyun <xiaoyun.li at intel.com>; Thotton,
> Shijith <Shijith.Thotton at cavium.com>; stable at dpdk.org
> Subject: [PATCH] igb_uio: remove PCI reset during uio device open
> 
> Issuing reset during uio device open caused PMD init failure for some NIC VFs
> (i40, ixgbe, qede) in host. So this initial reset is removed.
> Bus master enable is kept as part of open since we disable it in uio device release.
> 
> Fixes: b58eedfc7dd5 ("igb_uio: issue FLR during open and release of device file")
> Cc: stable at dpdk.org
> 
> Signed-off-by: Shijith Thotton <shijith.thotton at caviumnetworks.com>
> ---
>  lib/librte_eal/linuxapp/igb_uio/igb_uio.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
> 
> diff --git a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c
> b/lib/librte_eal/linuxapp/igb_uio/igb_uio.c
> index 07a19a3..a6c2996 100644
> --- a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c
> +++ b/lib/librte_eal/linuxapp/igb_uio/igb_uio.c
> @@ -179,9 +179,7 @@ struct rte_uio_pci_dev {
>  	struct rte_uio_pci_dev *udev = info->priv;
>  	struct pci_dev *dev = udev->pdev;
> 
> -	pci_reset_function(dev);
> -
> -	/* set bus master, which was cleared by the reset function */
> +	/* enable bus mastering on the device */
>  	pci_set_master(dev);
> 
>  	return 0;
> --
> 1.8.3.1

Tested-by: Qiming Yang <qiming.yang at intel.com>

Hi, applied and tested this patch with 17.08 DPDK VF and
2.1.26 kernel PF and it fixes the problem on 10G/25G/40G.


More information about the dev mailing list