From: Xu Yilun <yilun...@intel.com>

commit 3c2760b78f90db874401d97e3c17829e2e36f400 upstream.

pci_driver.sriov_configure should return negative value on error and
number of enabled VFs on success. But now the driver returns 0 on
success. The sriov configure still works but will cause a warning
message:

  XX VFs requested; only 0 enabled

This patch changes the return value accordingly.

Cc: sta...@vger.kernel.org
Signed-off-by: Xu Yilun <yilun...@intel.com>
Signed-off-by: Wu Hao <hao...@intel.com>
Signed-off-by: Moritz Fischer <m...@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org>

---
 drivers/fpga/dfl-pci.c |    6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

--- a/drivers/fpga/dfl-pci.c
+++ b/drivers/fpga/dfl-pci.c
@@ -248,11 +248,13 @@ static int cci_pci_sriov_configure(struc
                        return ret;
 
                ret = pci_enable_sriov(pcidev, num_vfs);
-               if (ret)
+               if (ret) {
                        dfl_fpga_cdev_config_ports_pf(cdev);
+                       return ret;
+               }
        }
 
-       return ret;
+       return num_vfs;
 }
 
 static void cci_pci_remove(struct pci_dev *pcidev)


Reply via email to