[PATCH] error message in virDomainDiskDefIotuneParse shifted to virDomainDefPostParseCheck

Jamm02 moteenshah.02 at gmail.com
Thu Mar 24 16:09:56 UTC 2022


From: Moteen Shah <moteenshah.02 at gmail.com>

domain_conf.c: all the option collision total and... error messages in
virDomainDiskDefIotuneParse shifted to new function virDomainDefPostParseCheck
---
 src/conf/domain_conf.c | 86 ++++++++++++++++++++++--------------------
 1 file changed, 45 insertions(+), 41 deletions(-)

diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 153954a0b0..f2480f37f6 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -6229,6 +6229,50 @@ virDomainDefPostParseCheckFailure(virDomainDef *def,
     return 0;
 }
 
+static int
+virDomainDefPostParseCheck(virDomainDiskDef *def)
+{
+    if ((def->blkdeviotune.total_bytes_sec &&
+         def->blkdeviotune.read_bytes_sec) ||
+        (def->blkdeviotune.total_bytes_sec &&
+         def->blkdeviotune.write_bytes_sec)) {
+        virReportError(VIR_ERR_XML_ERROR, "%s",
+                       _("total and read/write bytes_sec "
+                         "cannot be set at the same time"));
+        return -1;
+    }
+
+    if ((def->blkdeviotune.total_iops_sec &&
+         def->blkdeviotune.read_iops_sec) ||
+        (def->blkdeviotune.total_iops_sec &&
+         def->blkdeviotune.write_iops_sec)) {
+        virReportError(VIR_ERR_XML_ERROR, "%s",
+                       _("total and read/write iops_sec "
+                         "cannot be set at the same time"));
+        return -1;
+    }
+
+    if ((def->blkdeviotune.total_bytes_sec_max &&
+         def->blkdeviotune.read_bytes_sec_max) ||
+        (def->blkdeviotune.total_bytes_sec_max &&
+         def->blkdeviotune.write_bytes_sec_max)) {
+        virReportError(VIR_ERR_XML_ERROR, "%s",
+                       _("total and read/write bytes_sec_max "
+                         "cannot be set at the same time"));
+        return -1;
+    }
+
+    if ((def->blkdeviotune.total_iops_sec_max &&
+         def->blkdeviotune.read_iops_sec_max) ||
+        (def->blkdeviotune.total_iops_sec_max &&
+         def->blkdeviotune.write_iops_sec_max)) {
+        virReportError(VIR_ERR_XML_ERROR, "%s",
+                       _("total and read/write iops_sec_max "
+                         "cannot be set at the same time"));
+        return -1;
+    }
+    return 0;
+}
 
 int
 virDomainDefPostParse(virDomainDef *def,
@@ -8784,47 +8828,7 @@ virDomainDiskDefIotuneParse(virDomainDiskDef *def,
     def->blkdeviotune.group_name =
         virXPathString("string(./iotune/group_name)", ctxt);
 
-    if ((def->blkdeviotune.total_bytes_sec &&
-         def->blkdeviotune.read_bytes_sec) ||
-        (def->blkdeviotune.total_bytes_sec &&
-         def->blkdeviotune.write_bytes_sec)) {
-        virReportError(VIR_ERR_XML_ERROR, "%s",
-                       _("total and read/write bytes_sec "
-                         "cannot be set at the same time"));
-        return -1;
-    }
-
-    if ((def->blkdeviotune.total_iops_sec &&
-         def->blkdeviotune.read_iops_sec) ||
-        (def->blkdeviotune.total_iops_sec &&
-         def->blkdeviotune.write_iops_sec)) {
-        virReportError(VIR_ERR_XML_ERROR, "%s",
-                       _("total and read/write iops_sec "
-                         "cannot be set at the same time"));
-        return -1;
-    }
-
-    if ((def->blkdeviotune.total_bytes_sec_max &&
-         def->blkdeviotune.read_bytes_sec_max) ||
-        (def->blkdeviotune.total_bytes_sec_max &&
-         def->blkdeviotune.write_bytes_sec_max)) {
-        virReportError(VIR_ERR_XML_ERROR, "%s",
-                       _("total and read/write bytes_sec_max "
-                         "cannot be set at the same time"));
-        return -1;
-    }
-
-    if ((def->blkdeviotune.total_iops_sec_max &&
-         def->blkdeviotune.read_iops_sec_max) ||
-        (def->blkdeviotune.total_iops_sec_max &&
-         def->blkdeviotune.write_iops_sec_max)) {
-        virReportError(VIR_ERR_XML_ERROR, "%s",
-                       _("total and read/write iops_sec_max "
-                         "cannot be set at the same time"));
-        return -1;
-    }
-
-    return 0;
+    return virDomainDefPostParseCheck(def);
 }
 #undef PARSE_IOTUNE
 
-- 
2.35.1



More information about the libvir-list mailing list