drivers/vfio/platform/vfio_platform_common.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
If reset requirement was relaxed via module parameter errors caused by
missing reset should not be propagated down to the vfio core.
Otherwise initialization will fail.
Signed-off-by: Tomasz Duszynski <tduszynski@marvell.com>
Fixes: 5f6c7e0831a1 ("vfio/platform: Use the new device life cycle helpers")
---
drivers/vfio/platform/vfio_platform_common.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/vfio/platform/vfio_platform_common.c b/drivers/vfio/platform/vfio_platform_common.c
index 1a0a238ffa35..c09ffab6fbe6 100644
--- a/drivers/vfio/platform/vfio_platform_common.c
+++ b/drivers/vfio/platform/vfio_platform_common.c
@@ -653,7 +653,8 @@ int vfio_platform_init_common(struct vfio_platform_device *vdev)
if (ret && vdev->reset_required)
dev_err(dev, "No reset function found for device %s\n",
vdev->name);
- return ret;
+
+ return vdev->reset_required ? ret : 0;
}
EXPORT_SYMBOL_GPL(vfio_platform_init_common);
--
2.34.1
> From: Tomasz Duszynski <tduszynski@marvell.com>
> Sent: Thursday, January 26, 2023 12:11 AM
> @@ -653,7 +653,8 @@ int vfio_platform_init_common(struct
> vfio_platform_device *vdev)
> if (ret && vdev->reset_required)
> dev_err(dev, "No reset function found for device %s\n",
> vdev->name);
> - return ret;
> +
> + return vdev->reset_required ? ret : 0;
> }
> EXPORT_SYMBOL_GPL(vfio_platform_init_common);
It reads slightly better to me as below:
if (ret & vdev->reset_required) {
dev_err(...);
return ret;
}
return 0;
>-----Original Message-----
>From: Tian, Kevin <kevin.tian@intel.com>
>Sent: Monday, January 30, 2023 10:06 AM
>To: Tomasz Duszynski <tduszynski@marvell.com>; Eric Auger <eric.auger@redhat.com>; Alex Williamson
><alex.williamson@redhat.com>; Cornelia Huck <cohuck@redhat.com>; Jason Gunthorpe <jgg@ziepe.ca>;
>open list:VFIO PLATFORM DRIVER <kvm@vger.kernel.org>; open list <linux-kernel@vger.kernel.org>
>Cc: Jerin Jacob Kollanukkaran <jerinj@marvell.com>
>Subject: [EXT] RE: [PATCH] vfio: platform: ignore missing reset if disabled at module init
>
>External Email
>
>----------------------------------------------------------------------
>> From: Tomasz Duszynski <tduszynski@marvell.com>
>> Sent: Thursday, January 26, 2023 12:11 AM @@ -653,7 +653,8 @@ int
>> vfio_platform_init_common(struct vfio_platform_device *vdev)
>> if (ret && vdev->reset_required)
>> dev_err(dev, "No reset function found for device %s\n",
>> vdev->name);
>> - return ret;
>> +
>> + return vdev->reset_required ? ret : 0;
>> }
>> EXPORT_SYMBOL_GPL(vfio_platform_init_common);
>
>It reads slightly better to me as below:
>
> if (ret & vdev->reset_required) {
> dev_err(...);
> return ret;
> }
>
> return 0;
Sure no problem.
Hi,
On 1/30/23 10:05, Tian, Kevin wrote:
>> From: Tomasz Duszynski <tduszynski@marvell.com>
>> Sent: Thursday, January 26, 2023 12:11 AM
>> @@ -653,7 +653,8 @@ int vfio_platform_init_common(struct
>> vfio_platform_device *vdev)
>> if (ret && vdev->reset_required)
>> dev_err(dev, "No reset function found for device %s\n",
>> vdev->name);
>> - return ret;
>> +
>> + return vdev->reset_required ? ret : 0;
>> }
>> EXPORT_SYMBOL_GPL(vfio_platform_init_common);
> It reads slightly better to me as below:
>
> if (ret & vdev->reset_required) {
> dev_err(...);
> return ret;
> }
>
> return 0;
>
agreed.
Thanks
Eric
© 2016 - 2026 Red Hat, Inc.