Merge tag 'riscv-for-linus-5.14-rc8' of git://git.kernel.org/pub/scm/linux/kernel...
[linux-2.6-microblaze.git] / drivers / pci / iov.c
index a712583..dafdc65 100644 (file)
@@ -391,9 +391,16 @@ static ssize_t sriov_numvfs_store(struct device *dev,
        if (num_vfs == pdev->sriov->num_VFs)
                goto exit;
 
+       /* is PF driver loaded */
+       if (!pdev->driver) {
+               pci_info(pdev, "no driver bound to device; cannot configure SR-IOV\n");
+               ret = -ENOENT;
+               goto exit;
+       }
+
        /* is PF driver loaded w/callback */
-       if (!pdev->driver || !pdev->driver->sriov_configure) {
-               pci_info(pdev, "Driver does not support SRIOV configuration via sysfs\n");
+       if (!pdev->driver->sriov_configure) {
+               pci_info(pdev, "driver does not support SR-IOV configuration via sysfs\n");
                ret = -ENOENT;
                goto exit;
        }