Hi
On Mon, Nov 12, 2018 at 8:03 PM Daniel P. Berrangé <berrange(a)redhat.com> wrote:
On Wed, Nov 07, 2018 at 07:13:11PM +0400, Marc-André Lureau wrote:
> As discussed during "[PATCH v4 00/29] vhost-user for input & GPU"
> review, let's define a common set of backend conventions to help with
> management layer implementation, and interoperability.
>
> v2:
> - use a vhost-user.json schema to discover backends and describe
> capability format
> - drop --pidfile
> - add some notes about daemonizing & stdin/out/err
>
> Cc: libvir-list(a)redhat.com
> Cc: Gerd Hoffmann <kraxel(a)redhat.com>
> Cc: Daniel P. Berrangé <berrange(a)redhat.com>
> Cc: Changpeng Liu <changpeng.liu(a)intel.com>
> Cc: Dr. David Alan Gilbert <dgilbert(a)redhat.com>
> Cc: Felipe Franciosi <felipe(a)nutanix.com>
> Cc: Gonglei <arei.gonglei(a)huawei.com>
> Cc: Maxime Coquelin <maxime.coquelin(a)redhat.com>
> Cc: Michael S. Tsirkin <mst(a)redhat.com>
> Cc: Victor Kaplansky <victork(a)redhat.com>
> Signed-off-by: Marc-André Lureau <marcandre.lureau(a)redhat.com>
> ---
> MAINTAINERS | 1 +
> docs/interop/vhost-user.json | 219 +++++++++++++++++++++++++++++++++++
> docs/interop/vhost-user.txt | 101 +++++++++++++++-
> 3 files changed, 319 insertions(+), 2 deletions(-)
> create mode 100644 docs/interop/vhost-user.json
> diff --git a/docs/interop/vhost-user.json b/docs/interop/vhost-user.json
> new file mode 100644
> index 0000000000..91b5bf499e
> --- /dev/null
> +++ b/docs/interop/vhost-user.json
> @@ -0,0 +1,219 @@
> +# -*- Mode: Python -*-
> +#
> +# Copyright (C) 2018 Red Hat, Inc.
> +#
> +# Authors:
> +# Marc-André Lureau <marcandre.lureau(a)redhat.com>
> +#
> +# This work is licensed under the terms of the GNU GPL, version 2 or
> +# later. See the COPYING file in the top-level directory.
> +
> +##
> +# = vhost user backend discovery & capabilities
> +##
> +
> +##
> +# @VHostUserBackendType:
> +#
> +# List the various vhost user backend types.
> +#
> +# @net: virtio net
> +# @block: virtio block
> +# @console: virtio console
> +# @rng: virtio rng
> +# @balloon: virtio balloon
> +# @rpmsg: virtio remote processor messaging
> +# @scsi: virtio scsi
> +# @9p: 9p virtio console
> +# @rproc-serial: virtio remoteproc serial link
> +# @caif: virtio caif
> +# @gpu: virtio gpu
> +# @input: virtio input
> +# @vsock: virtio vsock transport
> +# @crypto: virtio crypto
Is it possible to actually use an external backend process with
all these yet ? If not, perhaps we should only start with the
backends that will be usable immediately ?
No, most of them don't have vhost-user support in qemu. Nevertheless,
I think the vhost-user spec should cover existing virtio devices, and
not be limited to what qemu can do today, for interoperability.
> +#
> +# Since: 3.2
> +##
> +{
> + 'enum': 'VHostUserBackendType',
> + 'data': [ 'net', 'block', 'console',
'rng', 'balloon', 'rpmsg',
> + 'scsi', '9p', 'rproc-serial', 'caif',
'gpu', 'input', 'vsock',
> + 'crypto' ]
> +}
Regardless of the answer to the above question,
Reviewed-by: Daniel P. Berrangé <berrange(a)redhat.com>
thanks
--
Marc-André Lureau