As a result of RFC [1], this implements the unprivleged SG_IO support. v4 - v5: * Per discussion in [2], this set uses a hash table to store the shared disk's info. See 1/12 for more details. Osier Yang (12): qemu: Add a hash table for the shared disks docs: Add docs and rng schema for new XML cdbfilter conf: Parse and format the new XML tag cdbfilter util: Prepare helpers for unpriv_sgio setting qemu: Manage disk's unpriv_sgio in domain lifecyle qemu: Do not restore the sysfs unpriv_sgio if the disk is being shared qemu: Error out when domain starting if the cdbfilter setting conflicts qemu: Set unpriv_sgio when attaching disk qemu: Restore unpriv_sgio when detaching disk qemu: Error out if the shared disk conf conflicts with others when attaching qemu: Do not restore unpriv_sgio when detaching disk if it's still shared conf: Save disk's original unpriv_sgio state into status XML docs/formatdomain.html.in | 13 ++- docs/schemas/domaincommon.rng | 52 +++++-- src/conf/domain_conf.c | 93 ++++++++++--- src/conf/domain_conf.h | 11 ++ src/libvirt_private.syms | 4 + src/qemu/qemu_conf.c | 60 ++++++++ src/qemu/qemu_conf.h | 22 +++ src/qemu/qemu_driver.c | 72 ++++++++++ src/qemu/qemu_process.c | 104 ++++++++++++++- src/qemu/qemu_process.h | 3 + src/util/util.c | 145 ++++++++++++++++++++ src/util/util.h | 8 + ...ml2argv-disk-scsi-lun-passthrough-cdbfilter.xml | 32 +++++ tests/qemuxml2xmltest.c | 1 + 14 files changed, 585 insertions(+), 35 deletions(-) create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-scsi-lun-passthrough-cdbfilter.xml [1] https://www.redhat.com/archives/libvir-list/2012-November/msg00988.html [2] https://www.redhat.com/archives/libvir-list/2012-December/msg00325.html Regards, Osier -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list