2021-01-08 22:10:22

by Moritz Fischer

[permalink] [raw]
Subject: [PATCH] PCI/IOV: Clarify error message for unbound devices

Be more verbose to disambiguate the error case when trying to configure
SRIOV with no driver bound vs. a driver that does not implement the
SRIOV callback.

Reported-by: Brian Foley <[email protected]>
Signed-off-by: Moritz Fischer <[email protected]>
---
drivers/pci/iov.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/drivers/pci/iov.c b/drivers/pci/iov.c
index 4afd4ee4f7f0..f9ecc691daf5 100644
--- a/drivers/pci/iov.c
+++ b/drivers/pci/iov.c
@@ -304,8 +304,15 @@ 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 SRIOV\n");
+ ret = -ENOENT;
+ goto exit;
+ }
+
/* is PF driver loaded w/callback */
- if (!pdev->driver || !pdev->driver->sriov_configure) {
+ if (!pdev->driver->sriov_configure) {
pci_info(pdev, "Driver does not support SRIOV configuration via sysfs\n");
ret = -ENOENT;
goto exit;
--
2.29.2


2021-03-08 09:50:41

by Krzysztof Wilczyński

[permalink] [raw]
Subject: Re: [PATCH] PCI/IOV: Clarify error message for unbound devices

Hi Moritz,

[...]
> + /* is PF driver loaded */
> + if (!pdev->driver) {
> + pci_info(pdev, "No driver bound to device. Cannot configure SRIOV\n");
> + ret = -ENOENT;
> + goto exit;
> + }
[...]

Thank you!

Reviewed-by: Krzysztof Wilczyński <[email protected]>

Krzysztof