* [PATCH] vhost: fix virtqueue access lock check for handlers
@ 2024-03-07 10:36 David Marchand
2024-03-07 14:20 ` Kevin Traynor
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: David Marchand @ 2024-03-07 10:36 UTC (permalink / raw)
To: dev; +Cc: Maxime Coquelin, Chenbo Xia
As the vhost library may receive a request for an unsupported request,
it is necessary to check msg_handler before checking if locking queue
pairs is requested.
Coverity issue: 415049
Fixes: 5e8fcc60b59d ("vhost: enhance virtqueue access lock asserts")
Signed-off-by: David Marchand <david.marchand@redhat.com>
---
lib/vhost/vhost_user.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/vhost/vhost_user.c b/lib/vhost/vhost_user.c
index 7fe1687f08..414192500e 100644
--- a/lib/vhost/vhost_user.c
+++ b/lib/vhost/vhost_user.c
@@ -3171,7 +3171,7 @@ vhost_user_msg_handler(int vid, int fd)
* inactive, so it is safe. Otherwise taking the access_lock
* would cause a dead lock.
*/
- if (msg_handler->lock_all_qps) {
+ if (msg_handler != NULL && msg_handler->lock_all_qps) {
if (!(dev->flags & VIRTIO_DEV_VDPA_CONFIGURED)) {
vhost_user_lock_all_queue_pairs(dev);
unlock_required = 1;
--
2.44.0
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] vhost: fix virtqueue access lock check for handlers
2024-03-07 10:36 [PATCH] vhost: fix virtqueue access lock check for handlers David Marchand
@ 2024-03-07 14:20 ` Kevin Traynor
2024-03-11 10:42 ` Maxime Coquelin
2024-03-13 14:46 ` David Marchand
2 siblings, 0 replies; 4+ messages in thread
From: Kevin Traynor @ 2024-03-07 14:20 UTC (permalink / raw)
To: David Marchand, dev; +Cc: Maxime Coquelin, Chenbo Xia
On 07/03/2024 10:36, David Marchand wrote:
> As the vhost library may receive a request for an unsupported request,
> it is necessary to check msg_handler before checking if locking queue
> pairs is requested.
>
> Coverity issue: 415049
> Fixes: 5e8fcc60b59d ("vhost: enhance virtqueue access lock asserts")
>
> Signed-off-by: David Marchand <david.marchand@redhat.com>
> ---
> lib/vhost/vhost_user.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/lib/vhost/vhost_user.c b/lib/vhost/vhost_user.c
> index 7fe1687f08..414192500e 100644
> --- a/lib/vhost/vhost_user.c
> +++ b/lib/vhost/vhost_user.c
> @@ -3171,7 +3171,7 @@ vhost_user_msg_handler(int vid, int fd)
> * inactive, so it is safe. Otherwise taking the access_lock
> * would cause a dead lock.
> */
> - if (msg_handler->lock_all_qps) {
> + if (msg_handler != NULL && msg_handler->lock_all_qps) {
> if (!(dev->flags & VIRTIO_DEV_VDPA_CONFIGURED)) {
> vhost_user_lock_all_queue_pairs(dev);
> unlock_required = 1;
Acked-by: Kevin Traynor <ktraynor@redhat.com>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] vhost: fix virtqueue access lock check for handlers
2024-03-07 10:36 [PATCH] vhost: fix virtqueue access lock check for handlers David Marchand
2024-03-07 14:20 ` Kevin Traynor
@ 2024-03-11 10:42 ` Maxime Coquelin
2024-03-13 14:46 ` David Marchand
2 siblings, 0 replies; 4+ messages in thread
From: Maxime Coquelin @ 2024-03-11 10:42 UTC (permalink / raw)
To: David Marchand, dev; +Cc: Chenbo Xia
On 3/7/24 11:36, David Marchand wrote:
> As the vhost library may receive a request for an unsupported request,
> it is necessary to check msg_handler before checking if locking queue
> pairs is requested.
>
> Coverity issue: 415049
> Fixes: 5e8fcc60b59d ("vhost: enhance virtqueue access lock asserts")
>
> Signed-off-by: David Marchand <david.marchand@redhat.com>
> ---
> lib/vhost/vhost_user.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/lib/vhost/vhost_user.c b/lib/vhost/vhost_user.c
> index 7fe1687f08..414192500e 100644
> --- a/lib/vhost/vhost_user.c
> +++ b/lib/vhost/vhost_user.c
> @@ -3171,7 +3171,7 @@ vhost_user_msg_handler(int vid, int fd)
> * inactive, so it is safe. Otherwise taking the access_lock
> * would cause a dead lock.
> */
> - if (msg_handler->lock_all_qps) {
> + if (msg_handler != NULL && msg_handler->lock_all_qps) {
> if (!(dev->flags & VIRTIO_DEV_VDPA_CONFIGURED)) {
> vhost_user_lock_all_queue_pairs(dev);
> unlock_required = 1;
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Thanks,
Maxime
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] vhost: fix virtqueue access lock check for handlers
2024-03-07 10:36 [PATCH] vhost: fix virtqueue access lock check for handlers David Marchand
2024-03-07 14:20 ` Kevin Traynor
2024-03-11 10:42 ` Maxime Coquelin
@ 2024-03-13 14:46 ` David Marchand
2 siblings, 0 replies; 4+ messages in thread
From: David Marchand @ 2024-03-13 14:46 UTC (permalink / raw)
To: David Marchand; +Cc: dev, Maxime Coquelin, Chenbo Xia, Kevin Traynor
On Thu, Mar 7, 2024 at 11:36 AM David Marchand
<david.marchand@redhat.com> wrote:
>
> As the vhost library may receive a request for an unsupported request,
> it is necessary to check msg_handler before checking if locking queue
> pairs is requested.
>
> Coverity issue: 415049
> Fixes: 5e8fcc60b59d ("vhost: enhance virtqueue access lock asserts")
>
> Signed-off-by: David Marchand <david.marchand@redhat.com>
Applied, thanks.
--
David Marchand
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-03-13 14:46 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-03-07 10:36 [PATCH] vhost: fix virtqueue access lock check for handlers David Marchand
2024-03-07 14:20 ` Kevin Traynor
2024-03-11 10:42 ` Maxime Coquelin
2024-03-13 14:46 ` David Marchand
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).