From: Stefano Garzarella <sgarzare@redhat.com>
To: mst@redhat.com, qemu-devel@nongnu.org
Cc: "Thomas Huth" <thuth@redhat.com>, "Kevin Wolf" <kwolf@redhat.com>,
qemu-block@nongnu.org,
"Marc-André Lureau" <marcandre.lureau@redhat.com>,
"Daniel P. Berrangé" <berrange@redhat.com>,
"Jason Wang" <jasowang@redhat.com>,
"Gerd Hoffmann" <kraxel@redhat.com>,
"Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Hanna Reitz" <hreitz@redhat.com>,
"Brad Smith" <brad@comstyle.com>,
"David Hildenbrand" <david@redhat.com>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Eduardo Habkost" <eduardo@habkost.net>,
"Laurent Vivier" <lvivier@redhat.com>,
"Coiby Xu" <Coiby.Xu@gmail.com>,
slp@redhat.com, gmaglione@redhat.com,
"Igor Mammedov" <imammedo@redhat.com>,
stefanha@redhat.com, "Raphael Norwitz" <raphael@enfabrica.net>,
"Markus Armbruster" <armbru@redhat.com>,
"Eric Blake" <eblake@redhat.com>,
"Stefano Garzarella" <sgarzare@redhat.com>
Subject: [PATCH v8 08/13] vhost-user: enable frontends on any POSIX system
Date: Tue, 18 Jun 2024 12:04:55 +0200 [thread overview]
Message-ID: <20240618100455.145733-1-sgarzare@redhat.com> (raw)
In-Reply-To: <20240618100043.144657-1-sgarzare@redhat.com>
The vhost-user protocol is not really Linux-specific so let's enable
vhost-user frontends for any POSIX system.
In vhost_net.c we use VHOST_FILE_UNBIND which is defined in a Linux
specific header, let's define it for other systems as well.
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Acked-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
---
meson.build | 1 -
hw/net/vhost_net.c | 5 +++++
hw/block/Kconfig | 2 +-
3 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/meson.build b/meson.build
index 97e00d6f59..2ba95a8c35 100644
--- a/meson.build
+++ b/meson.build
@@ -151,7 +151,6 @@ have_tpm = get_option('tpm') \
# vhost
have_vhost_user = get_option('vhost_user') \
- .disable_auto_if(host_os != 'linux') \
.require(host_os != 'windows',
error_message: 'vhost-user is not available on Windows').allowed()
have_vhost_vdpa = get_option('vhost_vdpa') \
diff --git a/hw/net/vhost_net.c b/hw/net/vhost_net.c
index fd1a93701a..fced429813 100644
--- a/hw/net/vhost_net.c
+++ b/hw/net/vhost_net.c
@@ -34,8 +34,13 @@
#include "standard-headers/linux/virtio_ring.h"
#include "hw/virtio/vhost.h"
#include "hw/virtio/virtio-bus.h"
+#if defined(__linux__)
#include "linux-headers/linux/vhost.h"
+#endif
+#ifndef VHOST_FILE_UNBIND
+#define VHOST_FILE_UNBIND -1
+#endif
/* Features supported by host kernel. */
static const int kernel_feature_bits[] = {
diff --git a/hw/block/Kconfig b/hw/block/Kconfig
index 9e8f28f982..29ee09e434 100644
--- a/hw/block/Kconfig
+++ b/hw/block/Kconfig
@@ -40,7 +40,7 @@ config VHOST_USER_BLK
bool
# Only PCI devices are provided for now
default y if VIRTIO_PCI
- depends on VIRTIO && VHOST_USER && LINUX
+ depends on VIRTIO && VHOST_USER
config SWIM
bool
--
2.45.2
next prev parent reply other threads:[~2024-06-18 10:05 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-18 10:00 [PATCH v8 00/13] vhost-user: support any POSIX system (tested on macOS, FreeBSD, OpenBSD) Stefano Garzarella
2024-06-18 10:00 ` [PATCH v8 01/13] qapi: clarify that the default is backend dependent Stefano Garzarella
2024-06-18 10:34 ` Philippe Mathieu-Daudé
2024-06-18 10:00 ` [PATCH v8 02/13] libvhost-user: set msg.msg_control to NULL when it is empty Stefano Garzarella
2024-06-18 10:00 ` [PATCH v8 03/13] libvhost-user: fail vu_message_write() if sendmsg() is failing Stefano Garzarella
2024-06-18 10:00 ` [PATCH v8 04/13] libvhost-user: mask F_INFLIGHT_SHMFD if memfd is not supported Stefano Garzarella
2024-06-18 10:00 ` [PATCH v8 05/13] vhost-user-server: do not set memory fd non-blocking Stefano Garzarella
2024-06-18 10:04 ` [PATCH v8 06/13] contrib/vhost-user-blk: fix bind() using the right size of the address Stefano Garzarella
2024-06-18 10:04 ` [PATCH v8 07/13] contrib/vhost-user-*: use QEMU bswap helper functions Stefano Garzarella
2024-06-18 10:04 ` Stefano Garzarella [this message]
2024-06-18 10:05 ` [PATCH v8 09/13] libvhost-user: enable it on any POSIX system Stefano Garzarella
2024-06-18 10:05 ` [PATCH v8 10/13] contrib/vhost-user-blk: " Stefano Garzarella
2024-06-18 10:05 ` [PATCH v8 11/13] hostmem: add a new memory backend based on POSIX shm_open() Stefano Garzarella
2024-06-18 10:05 ` [PATCH v8 12/13] tests/qtest/vhost-user-blk-test: use memory-backend-shm Stefano Garzarella
2024-06-18 10:05 ` [PATCH v8 13/13] tests/qtest/vhost-user-test: add a test case for memory-backend-shm Stefano Garzarella
2024-07-03 22:49 ` [PATCH v8 00/13] vhost-user: support any POSIX system (tested on macOS, FreeBSD, OpenBSD) Michael S. Tsirkin
2024-07-05 8:39 ` Stefano Garzarella
2024-07-05 8:49 ` Michael S. Tsirkin
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=20240618100455.145733-1-sgarzare@redhat.com \
--to=sgarzare@redhat.com \
--cc=Coiby.Xu@gmail.com \
--cc=armbru@redhat.com \
--cc=berrange@redhat.com \
--cc=brad@comstyle.com \
--cc=david@redhat.com \
--cc=eblake@redhat.com \
--cc=eduardo@habkost.net \
--cc=gmaglione@redhat.com \
--cc=hreitz@redhat.com \
--cc=imammedo@redhat.com \
--cc=jasowang@redhat.com \
--cc=kraxel@redhat.com \
--cc=kwolf@redhat.com \
--cc=lvivier@redhat.com \
--cc=marcandre.lureau@redhat.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=philmd@linaro.org \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=raphael@enfabrica.net \
--cc=slp@redhat.com \
--cc=stefanha@redhat.com \
--cc=thuth@redhat.com \
/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 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).