[Qemu-devel] [PATCH v2 00/12] vhost-user-backend & vhost-user-input

Marc-André Lureau posted 12 patches 28 weeks ago
Test docker-mingw@fedora passed
Test docker-clang@ubuntu failed
Test asan failed
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20190207165449.6125-1-marcandre.lureau@redhat.com
Maintainers: Kevin Wolf <kwolf@redhat.com>, Fam Zheng <fam@euphon.net>, Gerd Hoffmann <kraxel@redhat.com>, Max Reitz <mreitz@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>, Jason Wang <jasowang@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>, Gonglei <arei.gonglei@huawei.com>
contrib/libvhost-user/libvhost-user-glib.h |   3 +
contrib/libvhost-user/libvhost-user.h      |  15 +
include/hw/virtio/vhost-backend.h          |   4 +
include/hw/virtio/vhost-user-blk.h         |   2 +-
include/hw/virtio/vhost-user-scsi.h        |   2 +-
include/hw/virtio/vhost-user.h             |   2 +-
include/hw/virtio/virtio-input.h           |  14 +
include/sysemu/vhost-user-backend.h        |  60 ++++
backends/cryptodev-vhost-user.c            |  18 +-
backends/vhost-user.c                      | 249 +++++++++++++
contrib/libvhost-user/libvhost-user-glib.c |  11 +-
contrib/libvhost-user/libvhost-user.c      |  19 +-
contrib/vhost-user-input/main.c            | 398 +++++++++++++++++++++
hw/block/vhost-user-blk.c                  |  22 +-
hw/input/vhost-user-input.c                | 110 ++++++
hw/scsi/vhost-user-scsi.c                  |  20 +-
hw/virtio/vhost-stub.c                     |   4 +-
hw/virtio/vhost-user-input-pci.c           |  53 +++
hw/virtio/vhost-user.c                     | 118 +++++-
net/vhost-user.c                           |  13 +-
vl.c                                       |   3 +-
MAINTAINERS                                |   5 +
Makefile                                   |   3 +
Makefile.objs                              |   1 +
backends/Makefile.objs                     |   3 +-
configure                                  |   3 +
contrib/vhost-user-input/Makefile.objs     |   1 +
default-configs/virtio.mak                 |   1 +
docs/interop/vhost-user.json               | 219 ++++++++++++
docs/interop/vhost-user.txt                | 109 +++++-
hw/input/Makefile.objs                     |   1 +
hw/virtio/Makefile.objs                    |   1 +
qemu-options.hx                            |  20 ++
33 files changed, 1420 insertions(+), 87 deletions(-)
create mode 100644 include/sysemu/vhost-user-backend.h
create mode 100644 backends/vhost-user.c
create mode 100644 contrib/vhost-user-input/main.c
create mode 100644 hw/input/vhost-user-input.c
create mode 100644 hw/virtio/vhost-user-input-pci.c
create mode 100644 contrib/vhost-user-input/Makefile.objs
create mode 100644 docs/interop/vhost-user.json

[Qemu-devel] [PATCH v2 00/12] vhost-user-backend & vhost-user-input

Posted by Marc-André Lureau 28 weeks ago
Hi,

This series is based on previously discussed "[PATCH v4 00/29]
vhost-user for input & GPU" and "vhost-user: define conventions for
vhost-user backends" work. The GPU part is left off for now.

This series introduces a "vhost-user-backend": a convenience object
for vhost-user devices, for common command line and initilization
handling. As a simple showcase, a "vhost-user-input-pci" device is
introduced, which can be used with the "contrib: add vhost-user-input"
example. vhost-user-input isn't meant to be installed, discovered or
used by libvirt: no installation is done (no vhost-user JSON file is
provided either).

thanks

v2:
- rebased (VhostUserInputPCI got most of the changes, due to split)
- added "RFC: add explicit can_migrate to
  vhost_user_backend_dev_init()" to attempt to address Michael
  concerns about migration.

Marc-André Lureau (12):
  vhost-user: define conventions for vhost-user backends
  vhost-user: simplify vhost_user_init/vhost_user_cleanup
  libvhost-user: exit by default on VHOST_USER_NONE
  vhost-user: wrap some read/write with retry handling
  Add vhost-user-backend
  vhost-user: split vhost_user_read()
  vhost-user: add vhost_user_input_get_config()
  libvhost-user-glib: export vug_source_new()
  libvhost-user: add vu_queue_unpop()
  Add vhost-user-input-pci
  contrib: add vhost-user-input
  RFC: add explicit can_migrate to vhost_user_backend_dev_init()

 contrib/libvhost-user/libvhost-user-glib.h |   3 +
 contrib/libvhost-user/libvhost-user.h      |  15 +
 include/hw/virtio/vhost-backend.h          |   4 +
 include/hw/virtio/vhost-user-blk.h         |   2 +-
 include/hw/virtio/vhost-user-scsi.h        |   2 +-
 include/hw/virtio/vhost-user.h             |   2 +-
 include/hw/virtio/virtio-input.h           |  14 +
 include/sysemu/vhost-user-backend.h        |  60 ++++
 backends/cryptodev-vhost-user.c            |  18 +-
 backends/vhost-user.c                      | 249 +++++++++++++
 contrib/libvhost-user/libvhost-user-glib.c |  11 +-
 contrib/libvhost-user/libvhost-user.c      |  19 +-
 contrib/vhost-user-input/main.c            | 398 +++++++++++++++++++++
 hw/block/vhost-user-blk.c                  |  22 +-
 hw/input/vhost-user-input.c                | 110 ++++++
 hw/scsi/vhost-user-scsi.c                  |  20 +-
 hw/virtio/vhost-stub.c                     |   4 +-
 hw/virtio/vhost-user-input-pci.c           |  53 +++
 hw/virtio/vhost-user.c                     | 118 +++++-
 net/vhost-user.c                           |  13 +-
 vl.c                                       |   3 +-
 MAINTAINERS                                |   5 +
 Makefile                                   |   3 +
 Makefile.objs                              |   1 +
 backends/Makefile.objs                     |   3 +-
 configure                                  |   3 +
 contrib/vhost-user-input/Makefile.objs     |   1 +
 default-configs/virtio.mak                 |   1 +
 docs/interop/vhost-user.json               | 219 ++++++++++++
 docs/interop/vhost-user.txt                | 109 +++++-
 hw/input/Makefile.objs                     |   1 +
 hw/virtio/Makefile.objs                    |   1 +
 qemu-options.hx                            |  20 ++
 33 files changed, 1420 insertions(+), 87 deletions(-)
 create mode 100644 include/sysemu/vhost-user-backend.h
 create mode 100644 backends/vhost-user.c
 create mode 100644 contrib/vhost-user-input/main.c
 create mode 100644 hw/input/vhost-user-input.c
 create mode 100644 hw/virtio/vhost-user-input-pci.c
 create mode 100644 contrib/vhost-user-input/Makefile.objs
 create mode 100644 docs/interop/vhost-user.json

-- 
2.20.1.519.g8feddda32c