> On 29 Mar 2017, at 13:40, Michael S. Tsirkin <m...@redhat.com> wrote: > > On Thu, Mar 02, 2017 at 08:43:00AM -0800, Felipe Franciosi wrote: >> Based on various discussions on the 2016 KVM Forum, I'm sending over a >> vhost-user-scsi implementation for your consideration. >> >> This patchset introduces a new vhost-user SCSI device. While heavily >> based on vhost-scsi, it is implemented using vhost's userspace >> counterpart. The device has been coded and tested to work with live >> migration. >> >> As part of this work, a new vhost-scsi-common device was created and >> the existing vhost-scsi device moved underneath it. The new >> vhost-user-scsi device is also placed underneath it. >> >> A sample application based on the newly introduced libvhost-user is >> also included. It makes use of libiscsi for simplicity. >> >> For convenience, I'm maintaining an up-to-date version of these >> patches (including some necessary fixes for libvhost-user) on: >> >> https://github.com/franciozzy/qemu/tree/vus-upstream-v4 >> >> See the individual patches for build and use instructions. >> >> Signed-off-by: Felipe Franciosi <fel...@nutanix.com> > > Cc Yuanhan who was interested in this topic.
Thanks for looping this in, mst. The latest is v5 which has a libvhost-user fix for the build: http://lists.nongnu.org/archive/html/qemu-devel/2017-03/msg00417.html F. > >> v3 -> v4: >> - Drop configure switches and build vus by default. >> - Add sample application to .gitignore. >> - Removed a whitespace error. >> - Rebase on master. >> >> v2 -> v3: >> - Rebase after vhost notifier fixes by Paolo. >> - Exposed F_HOTPLUG and F_CHANGE on vhost-user-scsi. >> >> v1 -> v2: >> - Introduce new vhost-scsi-common device type. >> - Move vhost-scsi device underneath vhost-scsi-common. >> - Move sample application from tests/ to contrib/. >> - Make sample application use the glib event loop. >> - Minor fixes. >> >> Felipe Franciosi (3): >> vhost-scsi: create a vhost-scsi-common abstraction >> vus: Introduce vhost-user-scsi host device >> vus: Introduce a vhost-user-scsi sample application >> >> .gitignore | 1 + >> Makefile | 3 + >> Makefile.objs | 4 + >> configure | 1 + >> contrib/vhost-user-scsi/Makefile.objs | 1 + >> contrib/vhost-user-scsi/vhost-user-scsi.c | 886 >> ++++++++++++++++++++++++++++++ >> default-configs/pci.mak | 1 + >> hw/scsi/Makefile.objs | 3 +- >> hw/scsi/vhost-scsi-common.c | 143 +++++ >> hw/scsi/vhost-scsi.c | 194 ++----- >> hw/scsi/vhost-user-scsi.c | 215 ++++++++ >> hw/virtio/virtio-pci.c | 54 ++ >> hw/virtio/virtio-pci.h | 11 + >> include/hw/virtio/vhost-scsi-common.h | 48 ++ >> include/hw/virtio/vhost-scsi.h | 11 +- >> include/hw/virtio/vhost-user-scsi.h | 35 ++ >> include/hw/virtio/virtio-scsi.h | 5 + >> 17 files changed, 1468 insertions(+), 148 deletions(-) >> create mode 100644 contrib/vhost-user-scsi/Makefile.objs >> create mode 100644 contrib/vhost-user-scsi/vhost-user-scsi.c >> create mode 100644 hw/scsi/vhost-scsi-common.c >> create mode 100644 hw/scsi/vhost-user-scsi.c >> create mode 100644 include/hw/virtio/vhost-scsi-common.h >> create mode 100644 include/hw/virtio/vhost-user-scsi.h >> >> -- >> 1.9.4