qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[RFC PATCH for 8.0] backends/vhost-user: relax the ioeventfd check


From: Alex Bennée
Subject: [RFC PATCH for 8.0] backends/vhost-user: relax the ioeventfd check
Date: Fri, 2 Dec 2022 13:22:31 +0000

While you certainly need ioeventfds to work for KVM guests it
shouldn't be limited to that. We can run vhost-user backends for TCG
guests and either use ioeventfds or in band signalling.

Maybe we should apply the same fix as b0aa77d36d (vhost-user: fix
ioeventfd_enabled)?

With this change I can run:

  $QEMU $OPTS \
    -display gtk,gl=on \
    -device vhost-user-gpu-pci,chardev=vhgpu \
    -chardev socket,id=vhgpu,path=vhgpu.sock

with:

  ./contrib/vhost-user-gpu/vhost-user-gpu \
    -s vhgpu.sock \
    -v

and at least see things start-up (although the display gets rotated by
180 degrees).

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
 backends/vhost-user.c | 10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/backends/vhost-user.c b/backends/vhost-user.c
index 5dedb2d987..87d43fb03a 100644
--- a/backends/vhost-user.c
+++ b/backends/vhost-user.c
@@ -21,12 +21,6 @@
 #include "io/channel-command.h"
 #include "hw/virtio/virtio-bus.h"
 
-static bool
-ioeventfd_enabled(void)
-{
-    return kvm_enabled() && kvm_eventfds_enabled();
-}
-
 int
 vhost_user_backend_dev_init(VhostUserBackend *b, VirtIODevice *vdev,
                             unsigned nvqs, Error **errp)
@@ -35,8 +29,8 @@ vhost_user_backend_dev_init(VhostUserBackend *b, VirtIODevice 
*vdev,
 
     assert(!b->vdev && vdev);
 
-    if (!ioeventfd_enabled()) {
-        error_setg(errp, "vhost initialization failed: requires kvm");
+    if (kvm_enabled() && !kvm_eventfds_enabled()) {
+        error_setg(errp, "vhost initialization failed: kvm required 
ioeventfds");
         return -1;
     }
 
-- 
2.34.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]