ixgbe: Reset max_vfs to zero when user request is out of range
authorGreg Rose <gregory.v.rose@intel.com>
Tue, 17 Apr 2012 04:29:29 +0000 (04:29 +0000)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Wed, 2 May 2012 09:12:59 +0000 (02:12 -0700)
If the user request for the number of VFs in the max_vfs parameter is
out of range then reset the value to the default value of zero.  This
makes the behavior of the ixgbe driver the same as for the igb driver.

Signed-off-by: Greg Rose <gregory.v.rose@intel.com>
Tested-by: Robert Garrett <robertx.e.garrett@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c

index e8897cce8d0f70502df0d48ff86199648be5cdd3..688c7bb921894beac5d64c2fbfd1ace32ea61873 100644 (file)
@@ -133,7 +133,7 @@ static struct notifier_block dca_notifier = {
 static unsigned int max_vfs;
 module_param(max_vfs, uint, 0);
 MODULE_PARM_DESC(max_vfs,
-                "Maximum number of virtual functions to allocate per physical function");
+                "Maximum number of virtual functions to allocate per physical function - default is zero and maximum value is 63");
 #endif /* CONFIG_PCI_IOV */
 
 static unsigned int allow_unsupported_sfp;
@@ -6778,9 +6778,10 @@ static void __devinit ixgbe_probe_vf(struct ixgbe_adapter *adapter,
        /* The 82599 supports up to 64 VFs per physical function
         * but this implementation limits allocation to 63 so that
         * basic networking resources are still available to the
-        * physical function
+        * physical function.  If the user requests greater thn
+        * 63 VFs then it is an error - reset to default of zero.
         */
-       adapter->num_vfs = (max_vfs > 63) ? 63 : max_vfs;
+       adapter->num_vfs = (max_vfs > 63) ? 0 : max_vfs;
        ixgbe_enable_sriov(adapter, ii);
 #endif /* CONFIG_PCI_IOV */
 }