[libvirt] [PATCH v2 17/31] qemu: Split virQEMUCapsFetchCPUModels

Jiri Denemark posted 31 patches 6 years, 2 months ago
There is a newer version of this series
[libvirt] [PATCH v2 17/31] qemu: Split virQEMUCapsFetchCPUModels
Posted by Jiri Denemark 6 years, 2 months ago
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>
---

Notes:
    Version 2:
    - new patch

 src/qemu/qemu_capabilities.c | 29 +++++++++++++++++++++++------
 1 file changed, 23 insertions(+), 6 deletions(-)

diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
index cdc3a2d4b0..436d65f578 100644
--- a/src/qemu/qemu_capabilities.c
+++ b/src/qemu/qemu_capabilities.c
@@ -2487,15 +2487,15 @@ virQEMUCapsProbeQMPMachineProps(virQEMUCapsPtr qemuCaps,
 }
 
 
-int
-virQEMUCapsFetchCPUModels(qemuMonitorPtr mon,
-                          virArch arch,
-                          virDomainCapsCPUModelsPtr *cpuModels)
+static int
+virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon,
+                               virArch arch,
+                               qemuMonitorCPUDefsPtr *cpuDefs)
 {
     VIR_AUTOPTR(qemuMonitorCPUDefs) defs = NULL;
     size_t i;
 
-    *cpuModels = NULL;
+    *cpuDefs = NULL;
 
     if (qemuMonitorGetCPUDefinitions(mon, &defs) < 0)
         return -1;
@@ -2524,7 +2524,24 @@ virQEMUCapsFetchCPUModels(qemuMonitorPtr mon,
         }
     }
 
-    if (!(*cpuModels = virQEMUCapsCPUDefsToModels(defs, NULL, NULL)))
+    VIR_STEAL_PTR(*cpuDefs, defs);
+    return 0;
+}
+
+
+int
+virQEMUCapsFetchCPUModels(qemuMonitorPtr mon,
+                          virArch arch,
+                          virDomainCapsCPUModelsPtr *cpuModels)
+{
+    VIR_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;
-- 
2.23.0

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH v2 17/31] qemu: Split virQEMUCapsFetchCPUModels
Posted by Ján Tomko 6 years, 2 months ago
On Tue, Oct 15, 2019 at 05:34:53PM +0200, Jiri Denemark wrote:
>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>
>---
>
>Notes:
>    Version 2:
>    - new patch
>
> src/qemu/qemu_capabilities.c | 29 +++++++++++++++++++++++------
> 1 file changed, 23 insertions(+), 6 deletions(-)
>
>diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
>index cdc3a2d4b0..436d65f578 100644
>--- a/src/qemu/qemu_capabilities.c
>+++ b/src/qemu/qemu_capabilities.c
>@@ -2487,15 +2487,15 @@ virQEMUCapsProbeQMPMachineProps(virQEMUCapsPtr qemuCaps,
> }
>
>
>-int
>-virQEMUCapsFetchCPUModels(qemuMonitorPtr mon,
>-                          virArch arch,
>-                          virDomainCapsCPUModelsPtr *cpuModels)
>+static int
>+virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon,
>+                               virArch arch,
>+                               qemuMonitorCPUDefsPtr *cpuDefs)
> {
>     VIR_AUTOPTR(qemuMonitorCPUDefs) defs = NULL;
>     size_t i;
>
>-    *cpuModels = NULL;
>+    *cpuDefs = NULL;
>
>     if (qemuMonitorGetCPUDefinitions(mon, &defs) < 0)
>         return -1;
>@@ -2524,7 +2524,24 @@ virQEMUCapsFetchCPUModels(qemuMonitorPtr mon,
>         }
>     }
>
>-    if (!(*cpuModels = virQEMUCapsCPUDefsToModels(defs, NULL, NULL)))
>+    VIR_STEAL_PTR(*cpuDefs, defs);

g_steal_pointer

>+    return 0;
>+}
>+
>+
>+int
>+virQEMUCapsFetchCPUModels(qemuMonitorPtr mon,
>+                          virArch arch,
>+                          virDomainCapsCPUModelsPtr *cpuModels)
>+{
>+    VIR_AUTOPTR(qemuMonitorCPUDefs) defs = NULL;

g_autoptr

>+
>+    *cpuModels = NULL;
>+
>+    if (virQEMUCapsFetchCPUDefinitions(mon, arch, &defs) < 0)
>+        return -1;
>+
>+    if (defs && !(*cpuModels = virQEMUCapsCPUDefsToModels(defs, NULL, NULL)))
>         return -1;
>

Reviewed-by: Ján Tomko <jtomko@redhat.com>

Jano
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list