Most likely for historical reasons our CPU def formatting code is
happily adding useless <model fallback='allow'/> for host-model CPUs. We
can just drop it.
Signed-off-by: Jiri Denemark <jdenemar(a)redhat.com>
---
src/conf/cpu_conf.c | 16 +++++-----------
.../cputestdata/ppc64-host+guest-compat-none.xml | 4 +---
.../cpu-check-default-partial.xml | 4 +---
.../cpu-host-model-features.xml | 1 -
4 files changed, 7 insertions(+), 18 deletions(-)
diff --git a/src/conf/cpu_conf.c b/src/conf/cpu_conf.c
index 3641b5ef4c..4542bcb7bd 100644
--- a/src/conf/cpu_conf.c
+++ b/src/conf/cpu_conf.c
@@ -751,16 +751,12 @@ virCPUDefFormatBuf(virBufferPtr buf,
{
size_t i;
bool formatModel;
- bool formatFallback;
if (!def)
return 0;
formatModel = (def->mode == VIR_CPU_MODE_CUSTOM ||
def->mode == VIR_CPU_MODE_HOST_MODEL);
- formatFallback = (def->type == VIR_CPU_TYPE_GUEST &&
- (def->mode == VIR_CPU_MODE_HOST_MODEL ||
- (def->mode == VIR_CPU_MODE_CUSTOM && def->model)));
if (!def->model && def->mode == VIR_CPU_MODE_CUSTOM &&
def->nfeatures) {
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
@@ -768,9 +764,10 @@ virCPUDefFormatBuf(virBufferPtr buf,
return -1;
}
- if ((formatModel && def->model) || formatFallback) {
+ if (formatModel && def->model) {
virBufferAddLit(buf, "<model");
- if (formatFallback) {
+
+ if (def->type == VIR_CPU_TYPE_GUEST) {
const char *fallback;
fallback = virCPUFallbackTypeToString(def->fallback);
@@ -784,11 +781,8 @@ virCPUDefFormatBuf(virBufferPtr buf,
if (def->vendor_id)
virBufferEscapeString(buf, " vendor_id='%s'",
def->vendor_id);
}
- if (formatModel && def->model) {
- virBufferEscapeString(buf, ">%s</model>\n",
def->model);
- } else {
- virBufferAddLit(buf, "/>\n");
- }
+
+ virBufferEscapeString(buf, ">%s</model>\n", def->model);
}
if (formatModel && def->vendor)
diff --git a/tests/cputestdata/ppc64-host+guest-compat-none.xml
b/tests/cputestdata/ppc64-host+guest-compat-none.xml
index 188ebebb72..fd50c03a79 100644
--- a/tests/cputestdata/ppc64-host+guest-compat-none.xml
+++ b/tests/cputestdata/ppc64-host+guest-compat-none.xml
@@ -1,3 +1 @@
-<cpu mode='host-model'>
- <model fallback='allow'/>
-</cpu>
+<cpu mode='host-model'/>
diff --git a/tests/qemuxml2xmloutdata/cpu-check-default-partial.xml
b/tests/qemuxml2xmloutdata/cpu-check-default-partial.xml
index 4e5fa44832..b64a1f0ef7 100644
--- a/tests/qemuxml2xmloutdata/cpu-check-default-partial.xml
+++ b/tests/qemuxml2xmloutdata/cpu-check-default-partial.xml
@@ -8,9 +8,7 @@
<type arch='x86_64' machine='pc'>hvm</type>
<boot dev='network'/>
</os>
- <cpu mode='host-model' check='partial'>
- <model fallback='allow'/>
- </cpu>
+ <cpu mode='host-model' check='partial'/>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
diff --git a/tests/qemuxml2xmloutdata/cpu-host-model-features.xml
b/tests/qemuxml2xmloutdata/cpu-host-model-features.xml
index a5de9ea38d..6480bd5494 100644
--- a/tests/qemuxml2xmloutdata/cpu-host-model-features.xml
+++ b/tests/qemuxml2xmloutdata/cpu-host-model-features.xml
@@ -14,7 +14,6 @@
<boot dev='hd'/>
</os>
<cpu mode='host-model' check='partial'>
- <model fallback='allow'/>
<feature policy='require' name='abm'/>
<feature policy='force' name='ds'/>
<feature policy='disable' name='invtsc'/>
--
2.24.0