From: Ján Tomko Date: Fri, 5 Dec 2014 11:32:18 +0000 (+0100) Subject: Do not format CPU features without a model X-Git-Tag: v1.2.11~4 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=dd324bb2703b9cf619c521b2a04f186cd9734f0a;p=thirdparty%2Flibvirt.git Do not format CPU features without a model 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 --- diff --git a/src/conf/cpu_conf.c b/src/conf/cpu_conf.c index 2650208901..67203c6094 100644 --- a/src/conf/cpu_conf.c +++ b/src/conf/cpu_conf.c @@ -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) {