[libvirt] [PATCH 2/2] qemu: Ignore non-boolean CPU model properties

Jiri Denemark jdenemar at redhat.com
Wed Jan 11 14:00:48 UTC 2017


The query-cpu-model-expansion is currently implemented for s390(x) only
and all CPU properties it returns are booleans. However, x86
implementation will report more types of properties. Without making the
code more tolerant older libvirt would fail to probe newer QEMU
versions.

Signed-off-by: Jiri Denemark <jdenemar at redhat.com>
---
 src/qemu/qemu_monitor_json.c | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/src/qemu/qemu_monitor_json.c b/src/qemu/qemu_monitor_json.c
index 9b9c098dc..3afd56f38 100644
--- a/src/qemu/qemu_monitor_json.c
+++ b/src/qemu/qemu_monitor_json.c
@@ -4982,15 +4982,12 @@ qemuMonitorJSONParseCPUModelProperty(const char *key,
     size_t n = machine_model->nprops;
     bool supported;
 
+    if (virJSONValueGetBoolean(value, &supported) < 0)
+        return 0;
+
     if (VIR_STRDUP(machine_model->props[n].name, key) < 0)
         return -1;
 
-    if (virJSONValueGetBoolean(value, &supported) < 0) {
-        virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
-                       _("query-cpu-model-expansion reply data is missing a"
-                         " feature support value"));
-        return -1;
-    }
     machine_model->props[n].supported = supported;
 
     machine_model->nprops++;
-- 
2.11.0




More information about the libvir-list mailing list