On Fri, 22 Dec 2017 14:41:51 +0800 Tiwei Bie <tiwei....@intel.com> wrote:
> Signed-off-by: Tiwei Bie <tiwei....@intel.com> > --- > docs/interop/vhost-user.txt | 57 ++++++ > hw/vfio/common.c | 2 +- > hw/virtio/vhost-user.c | 381 > ++++++++++++++++++++++++++++++++++++++++- > hw/virtio/vhost.c | 3 +- > hw/virtio/virtio-pci.c | 8 - > hw/virtio/virtio-pci.h | 8 + > include/hw/vfio/vfio.h | 2 + > include/hw/virtio/vhost-user.h | 26 +++ > 8 files changed, 476 insertions(+), 11 deletions(-) > > diff --git a/hw/vfio/common.c b/hw/vfio/common.c > index 7b2924c0ef..53d8700581 100644 > --- a/hw/vfio/common.c > +++ b/hw/vfio/common.c > @@ -49,7 +49,7 @@ struct vfio_as_head vfio_address_spaces = > * initialized, this file descriptor is only released on QEMU exit and > * we'll re-use it should another vfio device be attached before then. > */ > -static int vfio_kvm_device_fd = -1; > +int vfio_kvm_device_fd = -1; > #endif It seems troublesome for vhost to maintain it's own list of groups and register them with the vfio-kvm device. These should likely be made into services provided by vfio/common.c such that we can have a single group list and interfaces for adding and deleting them. Thanks, Alex