]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu: Split virQEMUCapsFetchCPUModels
authorJiri Denemark <jdenemar@redhat.com>
Wed, 9 Oct 2019 08:16:17 +0000 (10:16 +0200)
committerJiri Denemark <jdenemar@redhat.com>
Wed, 20 Nov 2019 16:22:05 +0000 (17:22 +0100)
Most of the code moved to a new virQEMUCapsFetchCPUDefinitions function
and the existing virQEMUCapsFetchCPUModels just becomes a small wrapper
around virQEMUCapsFetchCPUDefinitions and virQEMUCapsCPUDefsToModels.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
src/qemu/qemu_capabilities.c

index 9e7c42e66697bb688b717e8486bb54e6dc54b300..cf4cd610579a50d13db5f59efa389a2f1672a2d6 100644 (file)
@@ -2470,15 +2470,15 @@ virQEMUCapsProbeQMPMachineProps(virQEMUCapsPtr qemuCaps,
 }
 
 
-int
-virQEMUCapsFetchCPUModels(qemuMonitorPtr mon,
-                          virArch arch,
-                          virDomainCapsCPUModelsPtr *cpuModels)
+static int
+virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon,
+                               virArch arch,
+                               qemuMonitorCPUDefsPtr *cpuDefs)
 {
     g_autoptr(qemuMonitorCPUDefs) defs = NULL;
     size_t i;
 
-    *cpuModels = NULL;
+    *cpuDefs = NULL;
 
     if (qemuMonitorGetCPUDefinitions(mon, &defs) < 0)
         return -1;
@@ -2506,7 +2506,24 @@ virQEMUCapsFetchCPUModels(qemuMonitorPtr mon,
         }
     }
 
-    if (!(*cpuModels = virQEMUCapsCPUDefsToModels(defs, NULL, NULL)))
+    *cpuDefs = g_steal_pointer(&defs);
+    return 0;
+}
+
+
+int
+virQEMUCapsFetchCPUModels(qemuMonitorPtr mon,
+                          virArch arch,
+                          virDomainCapsCPUModelsPtr *cpuModels)
+{
+    g_autoptr(qemuMonitorCPUDefs) defs = NULL;
+
+    *cpuModels = NULL;
+
+    if (virQEMUCapsFetchCPUDefinitions(mon, arch, &defs) < 0)
+        return -1;
+
+    if (defs && !(*cpuModels = virQEMUCapsCPUDefsToModels(defs, NULL, NULL)))
         return -1;
 
     return 0;