[libvirt] [Qemu-devel] [PATCH for-3.2 v2] vhost-user: define conventions for vhost-user backends

Marc-André Lureau marcandre.lureau at gmail.com
Tue Nov 20 12:08:34 UTC 2018


Hi
On Mon, Nov 12, 2018 at 8:03 PM Daniel P. Berrangé <berrange at 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 at redhat.com
> > Cc: Gerd Hoffmann <kraxel at redhat.com>
> > Cc: Daniel P. Berrangé <berrange at redhat.com>
> > Cc: Changpeng Liu <changpeng.liu at intel.com>
> > Cc: Dr. David Alan Gilbert <dgilbert at redhat.com>
> > Cc: Felipe Franciosi <felipe at nutanix.com>
> > Cc: Gonglei <arei.gonglei at huawei.com>
> > Cc: Maxime Coquelin <maxime.coquelin at redhat.com>
> > Cc: Michael S. Tsirkin <mst at redhat.com>
> > Cc: Victor Kaplansky <victork at redhat.com>
> > Signed-off-by: Marc-André Lureau <marcandre.lureau at 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 at 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 at redhat.com>

thanks

>
> Regards,
> Daniel
> --
> |: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
> |: https://libvirt.org         -o-            https://fstop138.berrange.com :|
> |: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|
>


-- 
Marc-André Lureau




More information about the libvir-list mailing list