From: "Michael S. Tsirkin" <mst@redhat.com>
To: "Alex Bennée" <alex.bennee@linaro.org>
Cc: qemu-devel@nongnu.org, "Eric Blake" <eblake@redhat.com>,
"Gerd Hoffmann" <kraxel@redhat.com>, "Fam Zheng" <fam@euphon.net>,
"Jason Wang" <jasowang@redhat.com>,
"Daniel P. Berrangé" <berrange@redhat.com>,
"Marc-André Lureau" <marcandre.lureau@redhat.com>,
"Viresh Kumar" <viresh.kumar@linaro.org>,
"Manos Pitsidianakis" <manos.pitsidianakis@linaro.org>,
"Raphael Norwitz" <raphael.norwitz@nutanix.com>,
"Hanna Reitz" <hreitz@redhat.com>,
"Erik Schilling" <erik.schilling@linaro.org>,
"Mathieu Poirier" <mathieu.poirier@linaro.org>,
qemu-block@nongnu.org, "Paolo Bonzini" <pbonzini@redhat.com>,
"Eduardo Habkost" <eduardo@habkost.net>,
"Markus Armbruster" <armbru@redhat.com>,
"Stefan Hajnoczi" <stefanha@redhat.com>,
"Mark Cave-Ayland" <mark.cave-ayland@ilande.co.uk>,
virtio-fs@redhat.com, "Kevin Wolf" <kwolf@redhat.com>,
"Gonglei (Arei)" <arei.gonglei@huawei.com>
Subject: Re: [PATCH v7 7/7] docs/system: add a basic enumeration of vhost-user devices
Date: Tue, 7 Nov 2023 13:09:59 -0500 [thread overview]
Message-ID: <20231107130708-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20231107180246.3456598-8-alex.bennee@linaro.org>
On Tue, Nov 07, 2023 at 06:02:46PM +0000, Alex Bennée wrote:
> Make it clear the vhost-user-device is intended for expert use only.
>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> Message-Id: <20231009095937.195728-7-alex.bennee@linaro.org>
>
> ---
> v5
> - split vhost-user-device out of the table
> - sort the table alphabetically
> - add sound and scmi devices
> v6
> - add note re vhost-user-device
> v7
> - fix patching description
> ---
> docs/system/devices/vhost-user-rng.rst | 2 +
> docs/system/devices/vhost-user.rst | 70 +++++++++++++++++++++++++-
> 2 files changed, 71 insertions(+), 1 deletion(-)
>
> diff --git a/docs/system/devices/vhost-user-rng.rst b/docs/system/devices/vhost-user-rng.rst
> index a145d4105c..ead1405326 100644
> --- a/docs/system/devices/vhost-user-rng.rst
> +++ b/docs/system/devices/vhost-user-rng.rst
> @@ -1,3 +1,5 @@
> +.. _vhost_user_rng:
> +
> QEMU vhost-user-rng - RNG emulation
> ===================================
>
> diff --git a/docs/system/devices/vhost-user.rst b/docs/system/devices/vhost-user.rst
> index a80e95a48a..c6afc4836f 100644
> --- a/docs/system/devices/vhost-user.rst
> +++ b/docs/system/devices/vhost-user.rst
> @@ -8,13 +8,81 @@ outside of QEMU itself. To do this there are a number of things
> required.
>
> vhost-user device
> -===================
> +=================
>
> These are simple stub devices that ensure the VirtIO device is visible
> to the guest. The code is mostly boilerplate although each device has
> a ``chardev`` option which specifies the ID of the ``--chardev``
> device that connects via a socket to the vhost-user *daemon*.
>
> +Each device will have an virtio-mmio and virtio-pci variant. See your
and ccw eventually?
> +platform details for what sort of virtio bus to use.
> +
> +.. list-table:: vhost-user devices
> + :widths: 20 20 60
> + :header-rows: 1
> +
> + * - Device
> + - Type
> + - Notes
> + * - vhost-user-blk
> + - Block storage
> + - See contrib/vhost-user-blk
> + * - vhost-user-fs
> + - File based storage driver
> + - See https://gitlab.com/virtio-fs/virtiofsd
> + * - vhost-user-gpio
> + - Proxy gpio pins to host
> + - See https://github.com/rust-vmm/vhost-device
> + * - vhost-user-gpu
> + - GPU driver
> + - See contrib/vhost-user-gpu
> + * - vhost-user-i2c
> + - Proxy i2c devices to host
> + - See https://github.com/rust-vmm/vhost-device
> + * - vhost-user-input
> + - Generic input driver
> + - See contrib/vhost-user-input
> + * - vhost-user-rng
> + - Entropy driver
> + - :ref:`vhost_user_rng`
> + * - vhost-user-scmi
> + - System Control and Management Interface
> + - See https://github.com/rust-vmm/vhost-device
> + * - vhost-user-snd
> + - Audio device
> + - See https://github.com/rust-vmm/vhost-device/staging
> + * - vhost-user-scsi
> + - SCSI based storage
> + - See contrib/vhost-user-scsi
> + * - vhost-user-vsock
> + - Socket based communication
> + - See https://github.com/rust-vmm/vhost-device
> +
> +The referenced *daemons* are not exhaustive, any conforming backend
> +implementing the device and using the vhost-user protocol should work.
> +
> +vhost-user-device
> +^^^^^^^^^^^^^^^^^
The distinction between "+vhost-user device" and "vhost-user-device"
will be lost on all but the most astute readers.
I propose to just removing this part for now. Developers can
subclass vhost-user-device just as easily.
> +The vhost-user-device is a generic development device intended for
> +expert use while developing new backends. The user needs to specify
> +all the required parameters including:
> +
> + - Device ``virtio-id``
> + - The ``num_vqs`` it needs and their ``vq_size``
> + - The ``config_size`` if needed
> +
> +.. note::
> + To prevent user confusion you cannot currently instantiate
> + vhost-user-device without first patching out::
> +
> + /* Reason: stop inexperienced users confusing themselves */
> + dc->user_creatable = false;
> +
> + in ``vhost-user-device.c`` and ``vhost-user-device-pci.c`` file and
> + rebuilding.
> +
> vhost-user daemon
> =================
>
> --
> 2.39.2
prev parent reply other threads:[~2023-11-07 18:10 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-07 18:02 [PATCH v7 0/7] virtio: cleanup vhost-user-generic and reduce c&p Alex Bennée
2023-11-07 18:02 ` [PATCH v7 1/7] virtio: split into vhost-user-base and vhost-user-device Alex Bennée
2023-11-07 18:02 ` [PATCH v7 2/7] hw/virtio: convert vhost-user-base to async shutdown Alex Bennée
2023-11-07 18:02 ` [PATCH v7 3/7] hw/virtio: derive vhost-user-rng from vhost-user-base Alex Bennée
2023-11-07 18:02 ` [PATCH v7 4/7] hw/virtio: derive vhost-user-gpio " Alex Bennée
2023-11-07 18:02 ` [PATCH v7 5/7] hw/virtio: derive vhost-user-i2c " Alex Bennée
2023-11-07 18:02 ` [PATCH v7 6/7] hw/virtio: add vhost-user-snd and virtio-snd-pci devices Alex Bennée
2023-11-07 18:02 ` [PATCH v7 7/7] docs/system: add a basic enumeration of vhost-user devices Alex Bennée
2023-11-07 18:09 ` Michael S. Tsirkin [this message]
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=20231107130708-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=alex.bennee@linaro.org \
--cc=arei.gonglei@huawei.com \
--cc=armbru@redhat.com \
--cc=berrange@redhat.com \
--cc=eblake@redhat.com \
--cc=eduardo@habkost.net \
--cc=erik.schilling@linaro.org \
--cc=fam@euphon.net \
--cc=hreitz@redhat.com \
--cc=jasowang@redhat.com \
--cc=kraxel@redhat.com \
--cc=kwolf@redhat.com \
--cc=manos.pitsidianakis@linaro.org \
--cc=marcandre.lureau@redhat.com \
--cc=mark.cave-ayland@ilande.co.uk \
--cc=mathieu.poirier@linaro.org \
--cc=pbonzini@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=raphael.norwitz@nutanix.com \
--cc=stefanha@redhat.com \
--cc=viresh.kumar@linaro.org \
--cc=virtio-fs@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 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.