RE: [net v2 3/8] ixgbe: fix vf lookup

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

> -----Original Message-----
> From: Kirsher, Jeffrey T
> Sent: Thursday, February 09, 2012 1:34 AM
> To: davem@xxxxxxxxxxxxx
> Cc: Rose, Gregory V; netdev@xxxxxxxxxxxxxxx; gospo@xxxxxxxxxx;
> sassmann@xxxxxxxxxx; stable@xxxxxxxxxxxxxxx; Kirsher, Jeffrey T
> Subject: [net v2 3/8] ixgbe: fix vf lookup
> 
> From: Greg Rose <gregory.v.rose@xxxxxxxxx>
> 
> Recent addition of code to find already allocated VFs failed to take
> account that systems with 2 or more multi-port SR-IOV capable controllers
> might have already enabled VFs.  Make sure that the VFs the function is
> finding are actually subordinate to the particular instance of the adapter
> that is looking for them and not subordinate to some device that has
> previously enabled SR-IOV.
> 
> This bug exists in 3.2 stable as well as 3.3 release candidates.
> 
> CC: stable@xxxxxxxxxxxxxxx
> Reported-by: David Ahern <daahern@xxxxxxxxx>
> Signed-off-by: Greg Rose <gregory.v.rose@xxxxxxxxx>
> Tested-by: Robert E Garrett <robertX.e.garrett@xxxxxxxxx>
> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>
> ---
>  drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c |    3 ++-
>  1 files changed, 2 insertions(+), 1 deletions(-)
> 
> diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c
> b/drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c
> index 8d8cdbc..b982710 100644
> --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c
> +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c
> @@ -67,7 +67,8 @@ static int ixgbe_find_enabled_vfs(struct ixgbe_adapter
> *adapter)
>  	vf_devfn = pdev->devfn + 0x80;
>  	pvfdev = pci_get_device(IXGBE_INTEL_VENDOR_ID, device_id, NULL);
>  	while (pvfdev) {
> -		if (pvfdev->devfn == vf_devfn)
> +		if (pvfdev->devfn == vf_devfn &&
> +		    (pvfdev->bus->number >= pdev->bus->number))
>  			vfs_found++;
>  		vf_devfn += 2;
>  		pvfdev = pci_get_device(IXGBE_INTEL_VENDOR_ID,
> --
> 1.7.7.6

It still has unneeded parenthesis around the second half of the if expression.  I'll fix that up in the next series of patches.  Same for the igb driver.

- Greg


--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Linux Kernel Discussion]     [Ethernet Bridging]     [Linux Wireless Networking]     [Linux Bluetooth Networking]     [Linux Networking Users]     [VLAN]     [Git]     [IETF Annouce]     [Linux Assembly]     [Security]     [Bugtraq]     [Photo]     [Singles Social Networking]     [Yosemite Information]     [MIPS Linux]     [ARM Linux Kernel]     [ARM Linux]     [Linux Virtualization]     [Linux Security]     [Linux IDE]     [Linux RAID]     [Linux SCSI]     [Free Dating]

Add to Google Powered by Linux