cpu_conf: Don't format empty model for host-model CPUs

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@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
Jiri Denemark 2019-11-12 15:54:12 +01:00
parent 65fa7bba1a
commit af8e39921a
4 changed files with 7 additions and 18 deletions

View File

@ -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)

View File

@ -1,3 +1 @@
<cpu mode='host-model'>
<model fallback='allow'/>
</cpu>
<cpu mode='host-model'/>

View File

@ -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>

View File

@ -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'/>