]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu: Add qemuMonitorCPUDefsCopy
authorJiri Denemark <jdenemar@redhat.com>
Tue, 24 Sep 2019 15:12:34 +0000 (17:12 +0200)
committerJiri Denemark <jdenemar@redhat.com>
Wed, 20 Nov 2019 16:22:05 +0000 (17:22 +0100)
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
src/qemu/qemu_monitor.c
src/qemu/qemu_monitor.h

index 77b40638e8792e03a4ec360501e142c5e2981606..46064298685d70b8bf93f86c7eb41aa8e4b0aa0f 100644 (file)
@@ -3591,6 +3591,29 @@ qemuMonitorCPUDefsNew(size_t count)
 }
 
 
+qemuMonitorCPUDefsPtr
+qemuMonitorCPUDefsCopy(qemuMonitorCPUDefsPtr src)
+{
+    g_autoptr(qemuMonitorCPUDefs) defs = NULL;
+    size_t i;
+
+    if (!src)
+        return NULL;
+
+    defs = qemuMonitorCPUDefsNew(src->ncpus);
+    for (i = 0; i < src->ncpus; i++) {
+        qemuMonitorCPUDefInfoPtr cpuDst = defs->cpus + i;
+        qemuMonitorCPUDefInfoPtr cpuSrc = src->cpus + i;
+
+        cpuDst->usable = cpuSrc->usable;
+        cpuDst->name = g_strdup(cpuSrc->name);
+        cpuDst->blockers = g_strdupv(cpuSrc->blockers);
+    }
+
+    return g_steal_pointer(&defs);
+}
+
+
 int
 qemuMonitorGetCPUModelExpansion(qemuMonitorPtr mon,
                                 qemuMonitorCPUModelExpansionType type,
index 588ee802607f3ff7e50f6e95d44183f8445c3910..cd8e850ed25791d09b03721c25a37a2202bed236 100644 (file)
@@ -1103,6 +1103,7 @@ struct _qemuMonitorCPUDefs {
 int qemuMonitorGetCPUDefinitions(qemuMonitorPtr mon,
                                  qemuMonitorCPUDefsPtr *cpuDefs);
 qemuMonitorCPUDefsPtr qemuMonitorCPUDefsNew(size_t count);
+qemuMonitorCPUDefsPtr qemuMonitorCPUDefsCopy(qemuMonitorCPUDefsPtr src);
 void qemuMonitorCPUDefsFree(qemuMonitorCPUDefsPtr defs);
 G_DEFINE_AUTOPTR_CLEANUP_FUNC(qemuMonitorCPUDefs, qemuMonitorCPUDefsFree);