]> xenbits.xensource.com Git - libvirt.git/commitdiff
Do not format CPU features without a model
authorJán Tomko <jtomko@redhat.com>
Fri, 5 Dec 2014 11:32:18 +0000 (12:32 +0100)
committerJán Tomko <jtomko@redhat.com>
Thu, 11 Dec 2014 11:03:36 +0000 (12:03 +0100)
For host-passthrough CPU we don't honor the CPU
features specified in the XML, but we allow
outputting them via the UPDATE_CPU flag for dumpxml,
this gives user a rough idea of what features the CPU
might have.

After restoring a managedsave'd domain, the features
might end up in the live status XML (in /var/run) without
the model. This XML cannot be parsed by the daemon after
restart and the domain might disappear.

This fix skips formatting the features for HOST_PASSTHROUGH
when UPDATE_CPU is not specified, so the newly restored domains
and newly created snapshots won't be affected.

Note: this doesn't fix existing snapshots or already restored
running domains.

https://bugzilla.redhat.com/show_bug.cgi?id=1030793
https://bugzilla.redhat.com/show_bug.cgi?id=1151885

src/conf/cpu_conf.c

index 2650208901844d5862355c0bb2bba1b84833c7a2..67203c60940b36dbf7bd494127e5ce84a97a2313 100644 (file)
@@ -658,7 +658,7 @@ virCPUDefFormatBuf(virBufferPtr buf,
         virBufferAddLit(buf, "/>\n");
     }
 
-    for (i = 0; i < def->nfeatures; i++) {
+    for (i = 0; formatModel && i < def->nfeatures; i++) {
         virCPUFeatureDefPtr feature = def->features + i;
 
         if (!feature->name) {