[libvirt] [PATCHv2 03/11] qemu_monitor: Indicate when CPUModelInfo props report migratablity

Chris Venteicher cventeic at redhat.com
Tue Jul 10 03:56:47 UTC 2018


Renamed variable in CPUModelInfo such that
props_migratable_valid is true when properties in CPUModelInfo
have been updated to accurately indicate if property is / isn't
migratable.

Property migratability is not returned directly in QMP messages but
rather is sometimes calculated within Libvirt by other means and then
stored in CPUModelInfo properties by Libvirt. props_migratable_valid is
set to true when this calculation has been done by Libvirt.
---
 src/qemu/qemu_capabilities.c | 10 +++++-----
 src/qemu/qemu_monitor.c      |  2 +-
 src/qemu/qemu_monitor.h      |  2 +-
 3 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
index c7da916f9a..3d78e2e29b 100644
--- a/src/qemu/qemu_capabilities.c
+++ b/src/qemu/qemu_capabilities.c
@@ -2410,7 +2410,7 @@ virQEMUCapsProbeQMPHostCPU(virQEMUCapsPtr qemuCaps,
             }
         }
 
-        modelInfo->migratability = true;
+        modelInfo->props_migratable_valid = true;
     }
 
     VIR_STEAL_PTR(cpuData->info, modelInfo);
@@ -2465,7 +2465,7 @@ virQEMUCapsGetCPUFeatures(virQEMUCapsPtr qemuCaps,
     }
 
     VIR_STEAL_PTR(*features, list);
-    if (migratable && !data->info->migratability)
+    if (migratable && !data->info->props_migratable_valid)
         ret = 1;
     else
         ret = 0;
@@ -2864,7 +2864,7 @@ virQEMUCapsInitCPUModel(virQEMUCapsPtr qemuCaps,
     virQEMUCapsHostCPUDataPtr cpuData = virQEMUCapsGetHostCPUData(qemuCaps, type);
     int ret = 1;
 
-    if (migratable && cpuData->info && !cpuData->info->migratability)
+    if (migratable && cpuData->info && !cpuData->info->props_migratable_valid)
         return 1;
 
     if (ARCH_IS_S390(qemuCaps->arch)) {
@@ -3047,7 +3047,7 @@ virQEMUCapsLoadHostCPUModelInfo(virQEMUCapsPtr qemuCaps,
                        _("invalid migratability value for host CPU model"));
         goto cleanup;
     }
-    hostCPU->migratability = val == VIR_TRISTATE_BOOL_YES;
+    hostCPU->props_migratable_valid = val == VIR_TRISTATE_BOOL_YES;
     VIR_FREE(str);
 
     ctxt->node = hostCPUNode;
@@ -3540,7 +3540,7 @@ virQEMUCapsFormatHostCPUModelInfo(virQEMUCapsPtr qemuCaps,
     virBufferAsprintf(buf,
                       "<hostCPU type='%s' model='%s' migratability='%s'>\n",
                       typeStr, model->name,
-                      model->migratability ? "yes" : "no");
+                      model->props_migratable_valid ? "yes" : "no");
     virBufferAdjustIndent(buf, 2);
 
     for (i = 0; i < model->nprops; i++) {
diff --git a/src/qemu/qemu_monitor.c b/src/qemu/qemu_monitor.c
index a3278c018e..371aaa15da 100644
--- a/src/qemu/qemu_monitor.c
+++ b/src/qemu/qemu_monitor.c
@@ -3671,7 +3671,7 @@ qemuMonitorCPUModelInfoCopy(const qemuMonitorCPUModelInfo *orig)
     if (VIR_STRDUP(copy->name, orig->name) < 0)
         goto error;
 
-    copy->migratability = orig->migratability;
+    copy->props_migratable_valid = orig->props_migratable_valid;
     copy->nprops = orig->nprops;
 
     for (i = 0; i < orig->nprops; i++) {
diff --git a/src/qemu/qemu_monitor.h b/src/qemu/qemu_monitor.h
index 18b59be985..208a7f5d21 100644
--- a/src/qemu/qemu_monitor.h
+++ b/src/qemu/qemu_monitor.h
@@ -1005,7 +1005,7 @@ struct _qemuMonitorCPUModelInfo {
     char *name;
     size_t nprops;
     qemuMonitorCPUPropertyPtr props;
-    bool migratability;
+    bool props_migratable_valid;
 };
 
 typedef enum {
-- 
2.17.1




More information about the libvir-list mailing list