> On 2 Mar 2017, at 21:47, Michael S. Tsirkin <m...@redhat.com> wrote: > > On Thu, Mar 02, 2017 at 10:25:49AM -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-v5 >> >> See the individual patches for build and use instructions. >> >> Signed-off-by: Felipe Franciosi <fel...@nutanix.com> > > BTW, pls remember to ping after QEMU release.
Ping! :-) F. > >> v4 -> v5: >> - Add a patch to fix a build issue with libvhost-user. >> >> 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 (4): >> libvhost-user: replace vasprintf() to fix build >> 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/libvhost-user/libvhost-user.c | 2 +- >> 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 + >> 18 files changed, 1469 insertions(+), 149 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