[libvirt] [PATCH 1/2] qemu: Add checks for blkdeviotune 'size_iops_sec' and adjust error

John Ferlan jferlan at redhat.com
Wed Nov 12 15:16:51 UTC 2014


Seems the 'size_iops_sec' was a late add and the checks for whether
the field was defined, but unsupported and the maximum size of the
field were not being made.

Also, adjust blkdeviotune support error message for grammar, spelling
(paramater), and remove the "(need QEMU 1.7 or superior)".  None of
our other similar error messages list which QEMU version is required.

Signed-off-by: John Ferlan <jferlan at redhat.com>
---
 src/qemu/qemu_command.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
index f674ba9..701831e 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@ -3676,11 +3676,12 @@ qemuBuildDriveStr(virConnectPtr conn,
          disk->blkdeviotune.write_bytes_sec_max ||
          disk->blkdeviotune.total_iops_sec_max ||
          disk->blkdeviotune.read_iops_sec_max ||
-         disk->blkdeviotune.write_iops_sec_max) &&
+         disk->blkdeviotune.write_iops_sec_max ||
+         disk->blkdeviotune.size_iops_sec) &&
         !virQEMUCapsGet(qemuCaps, QEMU_CAPS_DRIVE_IOTUNE_MAX)) {
         virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
-                       _("there is some block I/O throttling paramater that are not supported with this "
-                         "QEMU binary(need QEMU 1.7 or superior)"));
+                       _("there are some block I/O throttling parameters "
+                         "that are not supported with this QEMU binary"));
         goto error;
     }
 
@@ -3695,7 +3696,8 @@ qemuBuildDriveStr(virConnectPtr conn,
         disk->blkdeviotune.write_bytes_sec_max > LLONG_MAX ||
         disk->blkdeviotune.total_iops_sec_max > LLONG_MAX ||
         disk->blkdeviotune.read_iops_sec_max > LLONG_MAX ||
-        disk->blkdeviotune.write_iops_sec_max > LLONG_MAX) {
+        disk->blkdeviotune.write_iops_sec_max > LLONG_MAX ||
+        disk->blkdeviotune.size_iops_sec > LLONG_MAX) {
         virReportError(VIR_ERR_OVERFLOW,
                       _("block I/O throttle limit must "
                         "be less than %llu using QEMU"), LLONG_MAX);
-- 
1.9.3




More information about the libvir-list mailing list