v1: http://www.redhat.com/archives/libvir-list/2016-September/msg01090.html Differences since v1: Patches 1-5 are new... Patch 1 is essentially the former patch 8.5 added after initial review based on a review comment. Erik Skultety and I went back and forth on this one a few times and this is the result Patch 2 is a result of being frustrated by a generic error message when I know we could return whatever qemu gives us Patch 3 is simple code motion - the conf_disk is closer to usage now Patch 4 & 5 create and use the same algorithm to set the default values that weren't provided. Patches 6-7 have already been ACK'd... I've been waiting to push because they will interfere with libvirt-perl builds and since the 2.3.0 hasn't been published yet, I'm still holding onto them. Patch 8 is the former patch 8, but reworked mostly in qemu_driver.c, but also a change in qemu_monitor_json.c to use "P:" instead of "U:" for then length values. For _length a 0 is an invalid value, so we'll use it to mean "nothing changed" Patch 9 is the former patch 11 and is mostly intact, with major difference being the removal of the CHECK_IOTUNE_MAX_LENGTH macro (it was causing domain disappearance) Patch 10 is the former patch 12 and is unchanged. It also has been ACKd Patch 11-12 are new - it's the virsh code. John Ferlan (12): qemu: Create a macro to handle setting bytes/iops iotune values qemu: Return real error message for block_set_io_throttle qemu: Move setting of conf_disk in qemuDomainSetBlockIoTune qemu: Introduce qemuDomainSetBlockIoTuneSetDefaults qemu: Use qemuDomainsetBlockIoTuneSetDefaults for config include: Add new definitions for duration for bps/iops throttling caps: Add new capability for the bps/iops throttling length qemu: Add length for bps/iops throttling parameters to driver conf: Add support for blkiotune "_length" options qemu: Add the length options to the iotune command line virsh: Create a macro to add IOTUNE values virsh: Add _length parameters to virsh output docs/formatdomain.html.in | 40 ++- docs/schemas/domaincommon.rng | 38 +++ include/libvirt/libvirt-domain.h | 102 ++++++ src/conf/domain_conf.c | 24 +- src/conf/domain_conf.h | 6 + src/qemu/qemu_capabilities.c | 2 + src/qemu/qemu_capabilities.h | 1 + src/qemu/qemu_command.c | 21 ++ src/qemu/qemu_driver.c | 341 +++++++++++---------- src/qemu/qemu_monitor.c | 7 +- src/qemu/qemu_monitor.h | 3 +- src/qemu/qemu_monitor_json.c | 39 ++- src/qemu/qemu_monitor_json.h | 3 +- .../caps_2.6.0-gicv2.aarch64.xml | 1 + .../caps_2.6.0-gicv3.aarch64.xml | 1 + tests/qemucapabilitiesdata/caps_2.6.0.ppc64le.xml | 1 + tests/qemucapabilitiesdata/caps_2.6.0.x86_64.xml | 1 + tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml | 1 + tests/qemumonitorjsontest.c | 17 +- .../qemuxml2argv-blkdeviotune-max-length.args | 34 ++ .../qemuxml2argv-blkdeviotune-max-length.xml | 65 ++++ tests/qemuxml2argvtest.c | 4 + .../qemuxml2xmlout-blkdeviotune-max-length.xml | 1 + tests/qemuxml2xmltest.c | 1 + tools/virsh-domain.c | 196 +++++------- tools/virsh.pod | 21 ++ 26 files changed, 673 insertions(+), 298 deletions(-) create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-blkdeviotune-max-length.args create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-blkdeviotune-max-length.xml create mode 120000 tests/qemuxml2xmloutdata/qemuxml2xmlout-blkdeviotune-max-length.xml -- 2.7.4 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list