All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mostafa Saleh <smostafa@google.com>
To: eric.auger@redhat.com, alex.williamson@redhat.com
Cc: cohuck@redhat.com, kvm@vger.kernel.org,
	linux-kernel@vger.kernel.org, smostafa@google.com
Subject: [PATCH] vfio/platform: Fix reset_required behaviour
Date: Fri,  3 Mar 2023 12:11:52 +0000	[thread overview]
Message-ID: <20230303121151.3489618-1-smostafa@google.com> (raw)

vfio_platform_device has a flag reset_required that can be set from
module_param or vfio driver which indicates that reset is not a
requirement and it bypasses related checks.

This was introduced and implemented in vfio_platform_probe_common in
"b5add544d67 vfio, platform: make reset driver a requirement by default"

However, vfio_platform_probe_common was removed in
"ac1237912fb vfio/amba: Use the new device life cycle helpers"

And new implementation added in vfio_platform_init_common in
"5f6c7e0831a vfio/platform: Use the new device life cycle helpers"

which causes an error even if vfio-platform.reset_required=0, as it
only guards printing and not the return as before.

This patch fixes this by returning 0 if there is no reset function
for the device and reset_required=0. This is also consistent with
checks in vfio_platform_open_device and vfio_platform_close_device.

Signed-off-by: Mostafa Saleh <smostafa@google.com>
---
 drivers/vfio/platform/vfio_platform_common.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/drivers/vfio/platform/vfio_platform_common.c b/drivers/vfio/platform/vfio_platform_common.c
index 1a0a238ffa35..7325ff463cf0 100644
--- a/drivers/vfio/platform/vfio_platform_common.c
+++ b/drivers/vfio/platform/vfio_platform_common.c
@@ -650,10 +650,13 @@ int vfio_platform_init_common(struct vfio_platform_device *vdev)
 	mutex_init(&vdev->igate);
 
 	ret = vfio_platform_get_reset(vdev);
-	if (ret && vdev->reset_required)
+	if (ret && vdev->reset_required) {
 		dev_err(dev, "No reset function found for device %s\n",
 			vdev->name);
-	return ret;
+		return ret;
+	}
+
+	return 0;
 }
 EXPORT_SYMBOL_GPL(vfio_platform_init_common);
 
-- 
2.40.0.rc0.216.gc4246ad0f0-goog


             reply	other threads:[~2023-03-03 12:17 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-03 12:11 Mostafa Saleh [this message]
2023-03-03 13:34 ` [PATCH] vfio/platform: Fix reset_required behaviour Alex Williamson
2023-03-03 13:41   ` Mostafa Saleh

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230303121151.3489618-1-smostafa@google.com \
    --to=smostafa@google.com \
    --cc=alex.williamson@redhat.com \
    --cc=cohuck@redhat.com \
    --cc=eric.auger@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.