aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorSergio Lopez <slp@redhat.com>2022-03-04 11:08:54 +0100
committerMichael S. Tsirkin <mst@redhat.com>2022-03-06 06:19:47 -0500
commitb51082905faededb32f57e380446e919a42b9017 (patch)
treee2d2f0ea096c925365a0e57718bc7c98465d33b5 /docs
parenteb9baecdb3aef37ef4952bd4014f14c9d057fa18 (diff)
downloadqemu-b51082905faededb32f57e380446e919a42b9017.zip
qemu-b51082905faededb32f57e380446e919a42b9017.tar.gz
qemu-b51082905faededb32f57e380446e919a42b9017.tar.bz2
docs: vhost-user: add subsection for non-Linux platforms
Add a section explaining how vhost-user is supported on platforms other than Linux. Signed-off-by: Sergio Lopez <slp@redhat.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Message-Id: <20220304100854.14829-5-slp@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'docs')
-rw-r--r--docs/interop/vhost-user.rst20
1 files changed, 20 insertions, 0 deletions
diff --git a/docs/interop/vhost-user.rst b/docs/interop/vhost-user.rst
index edc3ad8..4dbc84f 100644
--- a/docs/interop/vhost-user.rst
+++ b/docs/interop/vhost-user.rst
@@ -38,6 +38,26 @@ conventions <backend_conventions>`.
*Master* and *slave* can be either a client (i.e. connecting) or
server (listening) in the socket communication.
+Support for platforms other than Linux
+--------------------------------------
+
+While vhost-user was initially developed targeting Linux, nowadays it
+is supported on any platform that provides the following features:
+
+- A way for requesting shared memory represented by a file descriptor
+ so it can be passed over a UNIX domain socket and then mapped by the
+ other process.
+
+- AF_UNIX sockets with SCM_RIGHTS, so QEMU and the other process can
+ exchange messages through it, including ancillary data when needed.
+
+- Either eventfd or pipe/pipe2. On platforms where eventfd is not
+ available, QEMU will automatically fall back to pipe2 or, as a last
+ resort, pipe. Each file descriptor will be used for receiving or
+ sending events by reading or writing (respectively) an 8-byte value
+ to the corresponding it. The 8-value itself has no meaning and
+ should not be interpreted.
+
Message Specification
=====================