From: Nicholas Bellinger <nab(a)linux-iscsi.org>
Hi Daniel & Co,
The following is the patch series to add support for vhost-scsi-pci
from QEMU >= v1.5.x into libvirt. It includes proper support for
passing a pre-opened vhostfd into vhost-scsi, which is required in
order to properly support nova performing a device_add for adding
a individual vhost-scsi-pci WWPN endpoint -> SCSI controller.
The logic closely follows what vhost-net already does in order to
allow a child qemu process to interact with the vhost-scsi character
device for registering vhost memory, setting vhost-scsi endpoints,
etc.
This code has been tested using openstack nova volume-attach, using
a Juno v2 development head from 07192014.
Thank you,
--nab
Mike Perez (1):
qemu: add vhost-scsi-pci definitions
Nicholas Bellinger (1):
qemu: add support vhost-scsi-pci for device_add hotplug
Makefile.am | 2 +-
docs/formatdomain.html.in | 20 ++--
docs/schemas/domaincommon.rng | 5 +
src/conf/domain_conf.c | 20 +++-
src/conf/domain_conf.h | 2 +
src/qemu/qemu_capabilities.c | 2 +
src/qemu/qemu_capabilities.h | 1 +
src/qemu/qemu_command.c | 115 ++++++++++++++++++--
src/qemu/qemu_command.h | 8 +-
src/qemu/qemu_hotplug.c | 47 +++++++-
src/qemu/qemu_monitor.c | 24 ++++
src/qemu/qemu_monitor.h | 4 +
src/vmx/vmx.c | 1 +
tests/qemucapabilitiesdata/caps_1.5.3-1.caps | 1 +
tests/qemucapabilitiesdata/caps_1.6.0-1.caps | 1 +
tests/qemucapabilitiesdata/caps_1.6.50-1.caps | 1 +
.../qemuxml2argv-disk-vhost-scsi-cmd_per_lun.args | 9 ++
.../qemuxml2argv-disk-vhost-scsi-cmd_per_lun.xml | 29 +++++
.../qemuxml2argv-disk-vhost-scsi-max_sectors.args | 9 ++
.../qemuxml2argv-disk-vhost-scsi-max_sectors.xml | 29 +++++
.../qemuxml2argv-disk-vhost-scsi-num_queues.args | 9 ++
.../qemuxml2argv-disk-vhost-scsi-num_queues.xml | 29 +++++
.../qemuxml2argv-disk-vhost-scsi-wwpn.args | 9 ++
.../qemuxml2argv-disk-vhost-scsi-wwpn.xml | 29 +++++
tests/qemuxml2argvtest.c | 12 ++
tests/qemuxml2xmltest.c | 4 +
26 files changed, 399 insertions(+), 23 deletions(-)
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-vhost-scsi-cmd_per_lun.args
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-vhost-scsi-cmd_per_lun.xml
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-vhost-scsi-max_sectors.args
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-vhost-scsi-max_sectors.xml
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-vhost-scsi-num_queues.args
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-vhost-scsi-num_queues.xml
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-vhost-scsi-wwpn.args
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-vhost-scsi-wwpn.xml
--
1.7.9.5