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

From: Bjorn Helgaas
Date: Thu May 27 2021 - 19:13:12 EST


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@xxxxxxxxxx>
> Reviewed-by: Krzysztof Wilczyński <kw@xxxxxxxxx>
> Signed-off-by: Moritz Fischer <mdf@xxxxxxxxxx>

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
>