diff mbox series

[RESEND,v2] PCI/IOV: Clarify error message for unbound devices

Message ID 20210327175140.682708-1-mdf@kernel.org
State New
Headers show
Series [RESEND,v2] PCI/IOV: Clarify error message for unbound devices | expand

Commit Message

Moritz Fischer March 27, 2021, 5:51 p.m. UTC
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 <bpfoley@google.com>
Reviewed-by: Krzysztof Wilczyński <kw@linux.com>
Signed-off-by: Moritz Fischer <mdf@kernel.org>
---
Changes from v1:
- Added Krzysztof's Reviewed-by
---
 drivers/pci/iov.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

Comments

Bjorn Helgaas May 27, 2021, 11:12 p.m. UTC | #1
On Sat, Mar 27, 2021 at 10:51:40AM -0700, Moritz Fischer wrote:
> 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 <bpfoley@google.com>
> Reviewed-by: Krzysztof Wilczyński <kw@linux.com>
> Signed-off-by: Moritz Fischer <mdf@kernel.org>

Applied to pci/virtualization for v5.14, thanks!

> ---
> Changes from v1:
> - Added Krzysztof's Reviewed-by
> ---
>  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.30.2
>
diff mbox series

Patch

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;