qemu: Use full CPU model expansion on x86

The static CPU model expansion is designed to return only canonical
names of all CPU properties. To maintain backwards compatibility libvirt
is stuck with different spelling of some of the features, but we need to
use the full expansion to get the additional spellings. In addition to
returning all spelling variants for all properties the full expansion
will contain properties which are not guaranteed to be migration
compatible. Thus, we need to combine both expansions. First we need to
call the static expansion to limit the result to migratable properties.
Then we can use the result of the static expansion as an input to the
full expansion to get both canonical names and their aliases.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
This commit is contained in:
Jiri Denemark 2017-02-23 13:53:51 +01:00
parent be3d59754b
commit bb3363c90b
7 changed files with 667 additions and 38 deletions

View File

@ -2851,6 +2851,7 @@ virQEMUCapsProbeQMPHostCPU(virQEMUCapsPtr qemuCaps,
{
qemuMonitorCPUModelInfoPtr *modelInfo;
const char *model;
qemuMonitorCPUModelExpansionType type;
if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_QUERY_CPU_MODEL_EXPANSION))
return 0;
@ -2863,9 +2864,17 @@ virQEMUCapsProbeQMPHostCPU(virQEMUCapsPtr qemuCaps,
model = "host";
}
return qemuMonitorGetCPUModelExpansion(mon,
QEMU_MONITOR_CPU_MODEL_EXPANSION_STATIC,
model, modelInfo);
/* Some x86_64 features defined in cpu_map.xml use spelling which differ
* from the one preferred by QEMU. Static expansion would give us only the
* preferred spelling, thus we need to do a full expansion on the result of
* the initial static expansion to get all variants of all features.
*/
if (ARCH_IS_X86(qemuCaps->arch))
type = QEMU_MONITOR_CPU_MODEL_EXPANSION_STATIC_FULL;
else
type = QEMU_MONITOR_CPU_MODEL_EXPANSION_STATIC;
return qemuMonitorGetCPUModelExpansion(mon, type, model, modelInfo);
}
struct tpmTypeToCaps {

View File

@ -954,6 +954,8 @@ struct _qemuMonitorCPUModelInfo {
typedef enum {
QEMU_MONITOR_CPU_MODEL_EXPANSION_STATIC,
QEMU_MONITOR_CPU_MODEL_EXPANSION_STATIC_FULL,
QEMU_MONITOR_CPU_MODEL_EXPANSION_FULL,
} qemuMonitorCPUModelExpansionType;
int qemuMonitorGetCPUModelExpansion(qemuMonitorPtr mon,

View File

@ -5031,7 +5031,7 @@ qemuMonitorJSONGetCPUModelExpansion(qemuMonitorPtr mon,
qemuMonitorCPUModelInfoPtr *model_info)
{
int ret = -1;
virJSONValuePtr model;
virJSONValuePtr model = NULL;
virJSONValuePtr cmd = NULL;
virJSONValuePtr reply = NULL;
virJSONValuePtr data;
@ -5049,10 +5049,16 @@ qemuMonitorJSONGetCPUModelExpansion(qemuMonitorPtr mon,
if (virJSONValueObjectAppendString(model, "name", model_name) < 0)
goto cleanup;
retry:
switch (type) {
case QEMU_MONITOR_CPU_MODEL_EXPANSION_STATIC:
case QEMU_MONITOR_CPU_MODEL_EXPANSION_STATIC_FULL:
typeStr = "static";
break;
case QEMU_MONITOR_CPU_MODEL_EXPANSION_FULL:
typeStr = "full";
break;
}
if (!(cmd = qemuMonitorJSONMakeCommand("query-cpu-model-expansion",
@ -5089,6 +5095,19 @@ qemuMonitorJSONGetCPUModelExpansion(qemuMonitorPtr mon,
goto cleanup;
}
/* QEMU_MONITOR_CPU_MODEL_EXPANSION_STATIC_FULL requests "full" expansion
* on the result of the initial "static" expansion.
*/
if (type == QEMU_MONITOR_CPU_MODEL_EXPANSION_STATIC_FULL) {
if (!(model = virJSONValueCopy(cpu_model)))
goto cleanup;
virJSONValueFree(cmd);
virJSONValueFree(reply);
type = QEMU_MONITOR_CPU_MODEL_EXPANSION_FULL;
goto retry;
}
if (!(cpu_name = virJSONValueObjectGetString(cpu_model, "name"))) {
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
_("query-cpu-model-expansion reply data was missing 'name'"));

View File

@ -46,9 +46,7 @@
<feature policy='require' name='3dnowext'/>
<feature policy='require' name='3dnow'/>
<feature policy='require' name='cr8legacy'/>
<feature policy='disable' name='pclmuldq'/>
<feature policy='disable' name='avx'/>
<feature policy='disable' name='lahf_lm'/>
<feature policy='disable' name='misalignsse'/>
<feature policy='disable' name='3dnowprefetch'/>
<feature policy='disable' name='xop'/>

View File

@ -26,11 +26,10 @@
<feature policy='require' name='ss'/>
<feature policy='require' name='vmx'/>
<feature policy='require' name='hypervisor'/>
<feature policy='require' name='tsc_adjust'/>
<feature policy='require' name='clflushopt'/>
<feature policy='require' name='xsaves'/>
<feature policy='require' name='pdpe1gb'/>
<feature policy='disable' name='pclmuldq'/>
<feature policy='disable' name='lahf_lm'/>
</mode>
<mode name='custom' supported='yes'>
<model usable='yes'>qemu64</model>

View File

@ -14539,6 +14539,246 @@
"id": "libvirt-48"
}
{
"return": {
"model": {
"name": "base",
"props": {
"phys-bits": 0,
"core-id": -1,
"xlevel": 2147483656,
"cmov": true,
"ia64": false,
"aes": true,
"mmx": true,
"arat": true,
"rdpid": false,
"pause-filter": false,
"xsavec": true,
"osxsave": false,
"tsc-frequency": 0,
"xd": true,
"hv-vendor-id": "",
"kvm-asyncpf": true,
"kvm_asyncpf": true,
"perfctr_core": false,
"perfctr-core": false,
"mpx": true,
"avx512cd": false,
"decodeassists": false,
"pbe": false,
"sse4_1": true,
"sse4.1": true,
"sse4-1": true,
"family": 6,
"vmware-cpuid-freq": true,
"avx512f": false,
"xcrypt": false,
"hv-runtime": false,
"msr": true,
"mce": true,
"mca": true,
"thread-id": -1,
"min-level": 13,
"xgetbv1": true,
"cid": false,
"hv-relaxed": false,
"fxsr": true,
"ds": false,
"hv-crash": false,
"xsaveopt": true,
"xtpr": false,
"avx512-vpopcntdq": false,
"phe": false,
"avx512vl": false,
"extapic": false,
"3dnowprefetch": true,
"cr8legacy": false,
"cpuid-0xb": true,
"xcrypt-en": false,
"kvm_pv_eoi": true,
"apic-id": 4294967295,
"pn": false,
"dca": false,
"vendor": "GenuineIntel",
"pku": false,
"smx": false,
"cmp-legacy": false,
"cmp_legacy": false,
"avx512-4fmaps": false,
"vmcb-clean": false,
"vmcb_clean": false,
"3dnowext": false,
"hle": true,
"npt": false,
"memory": "/machine/unattached/system[0]",
"clwb": false,
"lbrv": false,
"adx": true,
"ss": true,
"pni": true,
"svm_lock": false,
"svm-lock": false,
"smep": true,
"pfthreshold": false,
"smap": true,
"x2apic": true,
"avx512vbmi": false,
"hv-stimer": false,
"i64": true,
"flushbyasid": false,
"f16c": true,
"ace2-en": false,
"pat": true,
"pae": true,
"sse": true,
"phe-en": false,
"kvm-nopiodelay": true,
"kvm_nopiodelay": true,
"tm": false,
"kvmclock-stable-bit": true,
"hypervisor": true,
"socket-id": -1,
"pcommit": false,
"syscall": true,
"level": 13,
"avx512dq": false,
"svm": false,
"full-cpuid-auto-level": true,
"hv-reset": false,
"invtsc": false,
"sse3": true,
"sse2": true,
"est": false,
"avx512ifma": false,
"tm2": false,
"kvm-pv-eoi": true,
"cx8": true,
"kvm-mmu": false,
"kvm_mmu": false,
"sse4_2": true,
"sse4.2": true,
"sse4-2": true,
"pge": true,
"fill-mtrr-mask": true,
"pdcm": false,
"nodeid_msr": false,
"model": 94,
"movbe": true,
"nrip-save": false,
"nrip_save": false,
"sse4a": false,
"ssse3": true,
"kvm_pv_unhalt": true,
"invpcid": true,
"pdpe1gb": true,
"tsc-deadline": true,
"fma": true,
"cx16": true,
"de": true,
"enforce": false,
"stepping": 3,
"xsave": true,
"clflush": true,
"skinit": false,
"tce": false,
"tsc": true,
"fpu": true,
"ds-cpl": false,
"ds_cpl": false,
"ibs": false,
"host-phys-bits": false,
"fma4": false,
"la57": false,
"osvw": false,
"check": true,
"hv-spinlocks": -1,
"pmm": false,
"apic": true,
"pmu": false,
"min-xlevel2": 0,
"tsc-adjust": true,
"tsc_adjust": true,
"kvm-steal-time": true,
"kvm_steal_time": true,
"kvmclock": true,
"l3-cache": true,
"lwp": false,
"xop": false,
"avx": true,
"ospke": false,
"ace2": false,
"acpi": false,
"avx512bw": false,
"hv-vapic": false,
"fsgsbase": true,
"ht": false,
"nx": true,
"pclmulqdq": true,
"mmxext": false,
"popcnt": true,
"xsaves": true,
"lm": true,
"umip": false,
"avx2": true,
"pse": true,
"sep": true,
"pclmuldq": true,
"nodeid-msr": false,
"kvm": true,
"misalignsse": false,
"min-xlevel": 2147483656,
"bmi2": true,
"bmi1": true,
"kvm-pv-unhalt": true,
"realized": false,
"tsc_scale": false,
"tsc-scale": false,
"topoext": false,
"hv-vpindex": false,
"xlevel2": 0,
"clflushopt": true,
"monitor": false,
"avx512er": false,
"pmm-en": false,
"pcid": true,
"3dnow": false,
"erms": true,
"lahf-lm": true,
"lahf_lm": true,
"xstore": false,
"hv-synic": false,
"fxsr-opt": false,
"fxsr_opt": false,
"rtm": true,
"lmce": true,
"hv-time": false,
"perfctr-nb": false,
"perfctr_nb": false,
"ffxsr": false,
"rdrand": true,
"rdseed": true,
"avx512-4vnniw": false,
"vme": true,
"vmx": true,
"dtes64": false,
"mtrr": true,
"rdtscp": true,
"pse36": true,
"tbm": false,
"wdt": false,
"pause_filter": false,
"model-id": "Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz",
"sha-ni": false,
"abm": true,
"avx512pf": false,
"xstore-en": false
}
}
},
"id": "libvirt-49"
}
{
"return": {
},
@ -15068,3 +15308,243 @@
},
"id": "libvirt-3"
}
{
"return": {
"model": {
"name": "base",
"props": {
"phys-bits": 0,
"core-id": -1,
"xlevel": 2147483658,
"cmov": true,
"ia64": false,
"aes": true,
"mmx": true,
"arat": true,
"rdpid": false,
"pause-filter": false,
"xsavec": false,
"osxsave": false,
"tsc-frequency": 0,
"xd": true,
"hv-vendor-id": "",
"kvm-asyncpf": false,
"kvm_asyncpf": false,
"perfctr_core": false,
"perfctr-core": false,
"mpx": true,
"avx512cd": false,
"decodeassists": false,
"pbe": false,
"sse4_1": true,
"sse4.1": true,
"sse4-1": true,
"family": 6,
"vmware-cpuid-freq": true,
"avx512f": false,
"xcrypt": false,
"hv-runtime": false,
"msr": true,
"mce": true,
"mca": true,
"thread-id": -1,
"min-level": 13,
"xgetbv1": true,
"cid": false,
"hv-relaxed": false,
"fxsr": true,
"ds": false,
"hv-crash": false,
"xsaveopt": true,
"xtpr": false,
"avx512-vpopcntdq": false,
"phe": false,
"avx512vl": false,
"extapic": false,
"3dnowprefetch": false,
"cr8legacy": true,
"cpuid-0xb": true,
"xcrypt-en": false,
"kvm_pv_eoi": false,
"apic-id": 4294967295,
"pn": false,
"dca": false,
"vendor": "AuthenticAMD",
"pku": true,
"smx": false,
"cmp-legacy": false,
"cmp_legacy": false,
"avx512-4fmaps": false,
"vmcb-clean": false,
"vmcb_clean": false,
"3dnowext": true,
"hle": false,
"npt": false,
"memory": "/machine/unattached/system[0]",
"clwb": true,
"lbrv": false,
"adx": true,
"ss": true,
"pni": true,
"svm_lock": false,
"svm-lock": false,
"smep": true,
"pfthreshold": false,
"smap": true,
"x2apic": false,
"avx512vbmi": false,
"hv-stimer": false,
"i64": true,
"flushbyasid": false,
"f16c": false,
"ace2-en": false,
"pat": true,
"pae": true,
"sse": true,
"phe-en": false,
"kvm-nopiodelay": false,
"kvm_nopiodelay": false,
"tm": false,
"kvmclock-stable-bit": false,
"hypervisor": true,
"socket-id": -1,
"pcommit": true,
"syscall": true,
"level": 13,
"avx512dq": false,
"svm": true,
"full-cpuid-auto-level": true,
"hv-reset": false,
"invtsc": false,
"sse3": true,
"sse2": true,
"est": false,
"avx512ifma": false,
"tm2": false,
"kvm-pv-eoi": false,
"cx8": true,
"kvm-mmu": false,
"kvm_mmu": false,
"sse4_2": true,
"sse4.2": true,
"sse4-2": true,
"pge": true,
"fill-mtrr-mask": true,
"pdcm": false,
"nodeid_msr": false,
"model": 6,
"movbe": true,
"nrip-save": false,
"nrip_save": false,
"sse4a": true,
"ssse3": true,
"kvm_pv_unhalt": false,
"invpcid": false,
"pdpe1gb": true,
"tsc-deadline": false,
"fma": false,
"cx16": true,
"de": true,
"enforce": false,
"stepping": 3,
"xsave": true,
"clflush": true,
"skinit": false,
"tce": false,
"tsc": true,
"fpu": true,
"ds-cpl": false,
"ds_cpl": false,
"ibs": false,
"host-phys-bits": false,
"fma4": false,
"la57": true,
"osvw": false,
"check": true,
"hv-spinlocks": -1,
"pmm": false,
"apic": true,
"pmu": false,
"min-xlevel2": 0,
"tsc-adjust": false,
"tsc_adjust": false,
"kvm-steal-time": false,
"kvm_steal_time": false,
"kvmclock": false,
"l3-cache": true,
"lwp": false,
"xop": false,
"avx": false,
"ospke": true,
"ace2": false,
"acpi": true,
"avx512bw": false,
"hv-vapic": false,
"fsgsbase": true,
"ht": false,
"nx": true,
"pclmulqdq": true,
"mmxext": true,
"popcnt": true,
"xsaves": false,
"lm": true,
"umip": false,
"avx2": false,
"pse": true,
"sep": true,
"pclmuldq": true,
"nodeid-msr": false,
"kvm": true,
"misalignsse": false,
"min-xlevel": 2147483658,
"bmi2": true,
"bmi1": true,
"kvm-pv-unhalt": false,
"realized": false,
"tsc_scale": false,
"tsc-scale": false,
"topoext": false,
"hv-vpindex": false,
"xlevel2": 0,
"clflushopt": true,
"monitor": true,
"avx512er": false,
"pmm-en": false,
"pcid": false,
"3dnow": true,
"erms": true,
"lahf-lm": true,
"lahf_lm": true,
"xstore": false,
"hv-synic": false,
"fxsr-opt": false,
"fxsr_opt": false,
"rtm": false,
"lmce": false,
"hv-time": false,
"perfctr-nb": false,
"perfctr_nb": false,
"ffxsr": false,
"rdrand": false,
"rdseed": false,
"avx512-4vnniw": false,
"vme": false,
"vmx": false,
"dtes64": false,
"mtrr": true,
"rdtscp": true,
"pse36": true,
"tbm": false,
"wdt": false,
"pause_filter": false,
"model-id": "QEMU TCG CPU version 2.5+",
"sha-ni": false,
"abm": true,
"avx512pf": false,
"xstore-en": false
}
}
},
"id": "libvirt-4"
}

View File

@ -207,80 +207,110 @@
<package> (v2.8.0-1961-g5b10b94bd5)</package>
<arch>x86_64</arch>
<hostCPU type='kvm' model='base'>
<property name='phys-bits' type='number' value='0'/>
<property name='core-id' type='number' value='-1'/>
<property name='xlevel' type='number' value='2147483656'/>
<property name='cmov' type='boolean' value='true'/>
<property name='ia64' type='boolean' value='false'/>
<property name='aes' type='boolean' value='true'/>
<property name='mmx' type='boolean' value='true'/>
<property name='rdpid' type='boolean' value='false'/>
<property name='arat' type='boolean' value='true'/>
<property name='rdpid' type='boolean' value='false'/>
<property name='pause-filter' type='boolean' value='false'/>
<property name='xsavec' type='boolean' value='true'/>
<property name='osxsave' type='boolean' value='false'/>
<property name='tsc-frequency' type='number' value='0'/>
<property name='xd' type='boolean' value='true'/>
<property name='hv-vendor-id' type='string' value=''/>
<property name='kvm-asyncpf' type='boolean' value='true'/>
<property name='kvm_asyncpf' type='boolean' value='true'/>
<property name='perfctr_core' type='boolean' value='false'/>
<property name='perfctr-core' type='boolean' value='false'/>
<property name='mpx' type='boolean' value='true'/>
<property name='pbe' type='boolean' value='false'/>
<property name='avx512cd' type='boolean' value='false'/>
<property name='decodeassists' type='boolean' value='false'/>
<property name='pbe' type='boolean' value='false'/>
<property name='sse4_1' type='boolean' value='true'/>
<property name='sse4.1' type='boolean' value='true'/>
<property name='sse4-1' type='boolean' value='true'/>
<property name='family' type='number' value='6'/>
<property name='vmware-cpuid-freq' type='boolean' value='true'/>
<property name='avx512f' type='boolean' value='false'/>
<property name='xcrypt' type='boolean' value='false'/>
<property name='hv-runtime' type='boolean' value='false'/>
<property name='msr' type='boolean' value='true'/>
<property name='mce' type='boolean' value='true'/>
<property name='mca' type='boolean' value='true'/>
<property name='xcrypt' type='boolean' value='false'/>
<property name='thread-id' type='number' value='-1'/>
<property name='min-level' type='number' value='13'/>
<property name='xgetbv1' type='boolean' value='true'/>
<property name='cid' type='boolean' value='false'/>
<property name='ds' type='boolean' value='false'/>
<property name='hv-relaxed' type='boolean' value='false'/>
<property name='fxsr' type='boolean' value='true'/>
<property name='ds' type='boolean' value='false'/>
<property name='hv-crash' type='boolean' value='false'/>
<property name='xsaveopt' type='boolean' value='true'/>
<property name='xtpr' type='boolean' value='false'/>
<property name='avx512vl' type='boolean' value='false'/>
<property name='avx512-vpopcntdq' type='boolean' value='false'/>
<property name='phe' type='boolean' value='false'/>
<property name='avx512vl' type='boolean' value='false'/>
<property name='extapic' type='boolean' value='false'/>
<property name='3dnowprefetch' type='boolean' value='true'/>
<property name='cr8legacy' type='boolean' value='false'/>
<property name='cpuid-0xb' type='boolean' value='true'/>
<property name='xcrypt-en' type='boolean' value='false'/>
<property name='kvm_pv_eoi' type='boolean' value='true'/>
<property name='apic-id' type='number' value='4294967295'/>
<property name='pn' type='boolean' value='false'/>
<property name='dca' type='boolean' value='false'/>
<property name='vendor' type='string' value='GenuineIntel'/>
<property name='pku' type='boolean' value='false'/>
<property name='smx' type='boolean' value='false'/>
<property name='cmp-legacy' type='boolean' value='false'/>
<property name='cmp_legacy' type='boolean' value='false'/>
<property name='avx512-4fmaps' type='boolean' value='false'/>
<property name='vmcb-clean' type='boolean' value='false'/>
<property name='hle' type='boolean' value='true'/>
<property name='vmcb_clean' type='boolean' value='false'/>
<property name='3dnowext' type='boolean' value='false'/>
<property name='hle' type='boolean' value='true'/>
<property name='npt' type='boolean' value='false'/>
<property name='memory' type='string' value='/machine/unattached/system[0]'/>
<property name='clwb' type='boolean' value='false'/>
<property name='lbrv' type='boolean' value='false'/>
<property name='adx' type='boolean' value='true'/>
<property name='ss' type='boolean' value='true'/>
<property name='pni' type='boolean' value='true'/>
<property name='svm_lock' type='boolean' value='false'/>
<property name='svm-lock' type='boolean' value='false'/>
<property name='smep' type='boolean' value='true'/>
<property name='smap' type='boolean' value='true'/>
<property name='pfthreshold' type='boolean' value='false'/>
<property name='smap' type='boolean' value='true'/>
<property name='x2apic' type='boolean' value='true'/>
<property name='avx512vbmi' type='boolean' value='false'/>
<property name='hv-stimer' type='boolean' value='false'/>
<property name='i64' type='boolean' value='true'/>
<property name='flushbyasid' type='boolean' value='false'/>
<property name='f16c' type='boolean' value='true'/>
<property name='ace2-en' type='boolean' value='false'/>
<property name='pae' type='boolean' value='true'/>
<property name='pat' type='boolean' value='true'/>
<property name='pae' type='boolean' value='true'/>
<property name='sse' type='boolean' value='true'/>
<property name='phe-en' type='boolean' value='false'/>
<property name='kvm-nopiodelay' type='boolean' value='true'/>
<property name='kvm_nopiodelay' type='boolean' value='true'/>
<property name='tm' type='boolean' value='false'/>
<property name='kvmclock-stable-bit' type='boolean' value='true'/>
<property name='hypervisor' type='boolean' value='true'/>
<property name='socket-id' type='number' value='-1'/>
<property name='pcommit' type='boolean' value='false'/>
<property name='syscall' type='boolean' value='true'/>
<property name='level' type='number' value='13'/>
<property name='avx512dq' type='boolean' value='false'/>
<property name='svm' type='boolean' value='false'/>
<property name='full-cpuid-auto-level' type='boolean' value='true'/>
<property name='hv-reset' type='boolean' value='false'/>
<property name='invtsc' type='boolean' value='false'/>
<property name='sse3' type='boolean' value='true'/>
<property name='sse2' type='boolean' value='true'/>
<property name='est' type='boolean' value='false'/>
<property name='avx512ifma' type='boolean' value='false'/>
@ -288,44 +318,62 @@
<property name='kvm-pv-eoi' type='boolean' value='true'/>
<property name='cx8' type='boolean' value='true'/>
<property name='kvm-mmu' type='boolean' value='false'/>
<property name='kvm_mmu' type='boolean' value='false'/>
<property name='sse4_2' type='boolean' value='true'/>
<property name='sse4.2' type='boolean' value='true'/>
<property name='sse4-2' type='boolean' value='true'/>
<property name='pge' type='boolean' value='true'/>
<property name='fill-mtrr-mask' type='boolean' value='true'/>
<property name='pdcm' type='boolean' value='false'/>
<property name='nodeid_msr' type='boolean' value='false'/>
<property name='model' type='number' value='94'/>
<property name='movbe' type='boolean' value='true'/>
<property name='nrip-save' type='boolean' value='false'/>
<property name='ssse3' type='boolean' value='true'/>
<property name='nrip_save' type='boolean' value='false'/>
<property name='sse4a' type='boolean' value='false'/>
<property name='ssse3' type='boolean' value='true'/>
<property name='kvm_pv_unhalt' type='boolean' value='true'/>
<property name='invpcid' type='boolean' value='true'/>
<property name='pdpe1gb' type='boolean' value='true'/>
<property name='tsc-deadline' type='boolean' value='true'/>
<property name='fma' type='boolean' value='true'/>
<property name='cx16' type='boolean' value='true'/>
<property name='de' type='boolean' value='true'/>
<property name='enforce' type='boolean' value='false'/>
<property name='stepping' type='number' value='3'/>
<property name='xsave' type='boolean' value='true'/>
<property name='clflush' type='boolean' value='true'/>
<property name='skinit' type='boolean' value='false'/>
<property name='tsc' type='boolean' value='true'/>
<property name='tce' type='boolean' value='false'/>
<property name='tsc' type='boolean' value='true'/>
<property name='fpu' type='boolean' value='true'/>
<property name='ds-cpl' type='boolean' value='false'/>
<property name='ds_cpl' type='boolean' value='false'/>
<property name='ibs' type='boolean' value='false'/>
<property name='host-phys-bits' type='boolean' value='false'/>
<property name='fma4' type='boolean' value='false'/>
<property name='la57' type='boolean' value='false'/>
<property name='osvw' type='boolean' value='false'/>
<property name='apic' type='boolean' value='true'/>
<property name='check' type='boolean' value='true'/>
<property name='hv-spinlocks' type='number' value='-1'/>
<property name='pmm' type='boolean' value='false'/>
<property name='apic' type='boolean' value='true'/>
<property name='pmu' type='boolean' value='false'/>
<property name='min-xlevel2' type='number' value='0'/>
<property name='tsc-adjust' type='boolean' value='true'/>
<property name='tsc_adjust' type='boolean' value='true'/>
<property name='kvm-steal-time' type='boolean' value='true'/>
<property name='kvm_steal_time' type='boolean' value='true'/>
<property name='kvmclock' type='boolean' value='true'/>
<property name='l3-cache' type='boolean' value='true'/>
<property name='lwp' type='boolean' value='false'/>
<property name='xop' type='boolean' value='false'/>
<property name='avx' type='boolean' value='true'/>
<property name='ospke' type='boolean' value='false'/>
<property name='ace2' type='boolean' value='false'/>
<property name='acpi' type='boolean' value='false'/>
<property name='avx512bw' type='boolean' value='false'/>
<property name='ace2' type='boolean' value='false'/>
<property name='hv-vapic' type='boolean' value='false'/>
<property name='fsgsbase' type='boolean' value='true'/>
<property name='ht' type='boolean' value='false'/>
<property name='nx' type='boolean' value='true'/>
@ -335,17 +383,23 @@
<property name='xsaves' type='boolean' value='true'/>
<property name='lm' type='boolean' value='true'/>
<property name='umip' type='boolean' value='false'/>
<property name='pse' type='boolean' value='true'/>
<property name='avx2' type='boolean' value='true'/>
<property name='pse' type='boolean' value='true'/>
<property name='sep' type='boolean' value='true'/>
<property name='pclmuldq' type='boolean' value='true'/>
<property name='nodeid-msr' type='boolean' value='false'/>
<property name='kvm' type='boolean' value='true'/>
<property name='misalignsse' type='boolean' value='false'/>
<property name='min-xlevel' type='number' value='2147483656'/>
<property name='bmi1' type='boolean' value='true'/>
<property name='bmi2' type='boolean' value='true'/>
<property name='bmi1' type='boolean' value='true'/>
<property name='kvm-pv-unhalt' type='boolean' value='true'/>
<property name='realized' type='boolean' value='false'/>
<property name='tsc_scale' type='boolean' value='false'/>
<property name='tsc-scale' type='boolean' value='false'/>
<property name='topoext' type='boolean' value='false'/>
<property name='hv-vpindex' type='boolean' value='false'/>
<property name='xlevel2' type='number' value='0'/>
<property name='clflushopt' type='boolean' value='true'/>
<property name='monitor' type='boolean' value='false'/>
<property name='avx512er' type='boolean' value='false'/>
@ -354,11 +408,17 @@
<property name='3dnow' type='boolean' value='false'/>
<property name='erms' type='boolean' value='true'/>
<property name='lahf-lm' type='boolean' value='true'/>
<property name='fxsr-opt' type='boolean' value='false'/>
<property name='lahf_lm' type='boolean' value='true'/>
<property name='xstore' type='boolean' value='false'/>
<property name='hv-synic' type='boolean' value='false'/>
<property name='fxsr-opt' type='boolean' value='false'/>
<property name='fxsr_opt' type='boolean' value='false'/>
<property name='rtm' type='boolean' value='true'/>
<property name='lmce' type='boolean' value='true'/>
<property name='hv-time' type='boolean' value='false'/>
<property name='perfctr-nb' type='boolean' value='false'/>
<property name='perfctr_nb' type='boolean' value='false'/>
<property name='ffxsr' type='boolean' value='false'/>
<property name='rdrand' type='boolean' value='true'/>
<property name='rdseed' type='boolean' value='true'/>
<property name='avx512-4vnniw' type='boolean' value='false'/>
@ -370,6 +430,7 @@
<property name='pse36' type='boolean' value='true'/>
<property name='tbm' type='boolean' value='false'/>
<property name='wdt' type='boolean' value='false'/>
<property name='pause_filter' type='boolean' value='false'/>
<property name='model-id' type='string' value='Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz'/>
<property name='sha-ni' type='boolean' value='false'/>
<property name='abm' type='boolean' value='true'/>
@ -377,80 +438,110 @@
<property name='xstore-en' type='boolean' value='false'/>
</hostCPU>
<hostCPU type='tcg' model='base'>
<property name='phys-bits' type='number' value='0'/>
<property name='core-id' type='number' value='-1'/>
<property name='xlevel' type='number' value='2147483658'/>
<property name='cmov' type='boolean' value='true'/>
<property name='ia64' type='boolean' value='false'/>
<property name='aes' type='boolean' value='true'/>
<property name='mmx' type='boolean' value='true'/>
<property name='rdpid' type='boolean' value='false'/>
<property name='arat' type='boolean' value='true'/>
<property name='rdpid' type='boolean' value='false'/>
<property name='pause-filter' type='boolean' value='false'/>
<property name='xsavec' type='boolean' value='false'/>
<property name='osxsave' type='boolean' value='false'/>
<property name='tsc-frequency' type='number' value='0'/>
<property name='xd' type='boolean' value='true'/>
<property name='hv-vendor-id' type='string' value=''/>
<property name='kvm-asyncpf' type='boolean' value='false'/>
<property name='kvm_asyncpf' type='boolean' value='false'/>
<property name='perfctr_core' type='boolean' value='false'/>
<property name='perfctr-core' type='boolean' value='false'/>
<property name='mpx' type='boolean' value='true'/>
<property name='pbe' type='boolean' value='false'/>
<property name='avx512cd' type='boolean' value='false'/>
<property name='decodeassists' type='boolean' value='false'/>
<property name='pbe' type='boolean' value='false'/>
<property name='sse4_1' type='boolean' value='true'/>
<property name='sse4.1' type='boolean' value='true'/>
<property name='sse4-1' type='boolean' value='true'/>
<property name='family' type='number' value='6'/>
<property name='vmware-cpuid-freq' type='boolean' value='true'/>
<property name='avx512f' type='boolean' value='false'/>
<property name='xcrypt' type='boolean' value='false'/>
<property name='hv-runtime' type='boolean' value='false'/>
<property name='msr' type='boolean' value='true'/>
<property name='mce' type='boolean' value='true'/>
<property name='mca' type='boolean' value='true'/>
<property name='xcrypt' type='boolean' value='false'/>
<property name='thread-id' type='number' value='-1'/>
<property name='min-level' type='number' value='13'/>
<property name='xgetbv1' type='boolean' value='true'/>
<property name='cid' type='boolean' value='false'/>
<property name='ds' type='boolean' value='false'/>
<property name='hv-relaxed' type='boolean' value='false'/>
<property name='fxsr' type='boolean' value='true'/>
<property name='ds' type='boolean' value='false'/>
<property name='hv-crash' type='boolean' value='false'/>
<property name='xsaveopt' type='boolean' value='true'/>
<property name='xtpr' type='boolean' value='false'/>
<property name='avx512vl' type='boolean' value='false'/>
<property name='avx512-vpopcntdq' type='boolean' value='false'/>
<property name='phe' type='boolean' value='false'/>
<property name='avx512vl' type='boolean' value='false'/>
<property name='extapic' type='boolean' value='false'/>
<property name='3dnowprefetch' type='boolean' value='false'/>
<property name='cr8legacy' type='boolean' value='true'/>
<property name='cpuid-0xb' type='boolean' value='true'/>
<property name='xcrypt-en' type='boolean' value='false'/>
<property name='kvm_pv_eoi' type='boolean' value='false'/>
<property name='apic-id' type='number' value='4294967295'/>
<property name='pn' type='boolean' value='false'/>
<property name='dca' type='boolean' value='false'/>
<property name='vendor' type='string' value='AuthenticAMD'/>
<property name='pku' type='boolean' value='true'/>
<property name='smx' type='boolean' value='false'/>
<property name='cmp-legacy' type='boolean' value='false'/>
<property name='cmp_legacy' type='boolean' value='false'/>
<property name='avx512-4fmaps' type='boolean' value='false'/>
<property name='vmcb-clean' type='boolean' value='false'/>
<property name='hle' type='boolean' value='false'/>
<property name='vmcb_clean' type='boolean' value='false'/>
<property name='3dnowext' type='boolean' value='true'/>
<property name='hle' type='boolean' value='false'/>
<property name='npt' type='boolean' value='false'/>
<property name='memory' type='string' value='/machine/unattached/system[0]'/>
<property name='clwb' type='boolean' value='true'/>
<property name='lbrv' type='boolean' value='false'/>
<property name='adx' type='boolean' value='true'/>
<property name='ss' type='boolean' value='true'/>
<property name='pni' type='boolean' value='true'/>
<property name='svm_lock' type='boolean' value='false'/>
<property name='svm-lock' type='boolean' value='false'/>
<property name='smep' type='boolean' value='true'/>
<property name='smap' type='boolean' value='true'/>
<property name='pfthreshold' type='boolean' value='false'/>
<property name='smap' type='boolean' value='true'/>
<property name='x2apic' type='boolean' value='false'/>
<property name='avx512vbmi' type='boolean' value='false'/>
<property name='hv-stimer' type='boolean' value='false'/>
<property name='i64' type='boolean' value='true'/>
<property name='flushbyasid' type='boolean' value='false'/>
<property name='f16c' type='boolean' value='false'/>
<property name='ace2-en' type='boolean' value='false'/>
<property name='pae' type='boolean' value='true'/>
<property name='pat' type='boolean' value='true'/>
<property name='pae' type='boolean' value='true'/>
<property name='sse' type='boolean' value='true'/>
<property name='phe-en' type='boolean' value='false'/>
<property name='kvm-nopiodelay' type='boolean' value='false'/>
<property name='kvm_nopiodelay' type='boolean' value='false'/>
<property name='tm' type='boolean' value='false'/>
<property name='kvmclock-stable-bit' type='boolean' value='false'/>
<property name='hypervisor' type='boolean' value='true'/>
<property name='socket-id' type='number' value='-1'/>
<property name='pcommit' type='boolean' value='true'/>
<property name='syscall' type='boolean' value='true'/>
<property name='level' type='number' value='13'/>
<property name='avx512dq' type='boolean' value='false'/>
<property name='svm' type='boolean' value='true'/>
<property name='full-cpuid-auto-level' type='boolean' value='true'/>
<property name='hv-reset' type='boolean' value='false'/>
<property name='invtsc' type='boolean' value='false'/>
<property name='sse3' type='boolean' value='true'/>
<property name='sse2' type='boolean' value='true'/>
<property name='est' type='boolean' value='false'/>
<property name='avx512ifma' type='boolean' value='false'/>
@ -458,44 +549,62 @@
<property name='kvm-pv-eoi' type='boolean' value='false'/>
<property name='cx8' type='boolean' value='true'/>
<property name='kvm-mmu' type='boolean' value='false'/>
<property name='kvm_mmu' type='boolean' value='false'/>
<property name='sse4_2' type='boolean' value='true'/>
<property name='sse4.2' type='boolean' value='true'/>
<property name='sse4-2' type='boolean' value='true'/>
<property name='pge' type='boolean' value='true'/>
<property name='fill-mtrr-mask' type='boolean' value='true'/>
<property name='pdcm' type='boolean' value='false'/>
<property name='nodeid_msr' type='boolean' value='false'/>
<property name='model' type='number' value='6'/>
<property name='movbe' type='boolean' value='true'/>
<property name='nrip-save' type='boolean' value='false'/>
<property name='ssse3' type='boolean' value='true'/>
<property name='nrip_save' type='boolean' value='false'/>
<property name='sse4a' type='boolean' value='true'/>
<property name='ssse3' type='boolean' value='true'/>
<property name='kvm_pv_unhalt' type='boolean' value='false'/>
<property name='invpcid' type='boolean' value='false'/>
<property name='pdpe1gb' type='boolean' value='true'/>
<property name='tsc-deadline' type='boolean' value='false'/>
<property name='fma' type='boolean' value='false'/>
<property name='cx16' type='boolean' value='true'/>
<property name='de' type='boolean' value='true'/>
<property name='enforce' type='boolean' value='false'/>
<property name='stepping' type='number' value='3'/>
<property name='xsave' type='boolean' value='true'/>
<property name='clflush' type='boolean' value='true'/>
<property name='skinit' type='boolean' value='false'/>
<property name='tsc' type='boolean' value='true'/>
<property name='tce' type='boolean' value='false'/>
<property name='tsc' type='boolean' value='true'/>
<property name='fpu' type='boolean' value='true'/>
<property name='ds-cpl' type='boolean' value='false'/>
<property name='ds_cpl' type='boolean' value='false'/>
<property name='ibs' type='boolean' value='false'/>
<property name='host-phys-bits' type='boolean' value='false'/>
<property name='fma4' type='boolean' value='false'/>
<property name='la57' type='boolean' value='true'/>
<property name='osvw' type='boolean' value='false'/>
<property name='apic' type='boolean' value='true'/>
<property name='check' type='boolean' value='true'/>
<property name='hv-spinlocks' type='number' value='-1'/>
<property name='pmm' type='boolean' value='false'/>
<property name='apic' type='boolean' value='true'/>
<property name='pmu' type='boolean' value='false'/>
<property name='min-xlevel2' type='number' value='0'/>
<property name='tsc-adjust' type='boolean' value='false'/>
<property name='tsc_adjust' type='boolean' value='false'/>
<property name='kvm-steal-time' type='boolean' value='false'/>
<property name='kvm_steal_time' type='boolean' value='false'/>
<property name='kvmclock' type='boolean' value='false'/>
<property name='l3-cache' type='boolean' value='true'/>
<property name='lwp' type='boolean' value='false'/>
<property name='xop' type='boolean' value='false'/>
<property name='avx' type='boolean' value='false'/>
<property name='ospke' type='boolean' value='true'/>
<property name='ace2' type='boolean' value='false'/>
<property name='acpi' type='boolean' value='true'/>
<property name='avx512bw' type='boolean' value='false'/>
<property name='ace2' type='boolean' value='false'/>
<property name='hv-vapic' type='boolean' value='false'/>
<property name='fsgsbase' type='boolean' value='true'/>
<property name='ht' type='boolean' value='false'/>
<property name='nx' type='boolean' value='true'/>
@ -505,17 +614,23 @@
<property name='xsaves' type='boolean' value='false'/>
<property name='lm' type='boolean' value='true'/>
<property name='umip' type='boolean' value='false'/>
<property name='pse' type='boolean' value='true'/>
<property name='avx2' type='boolean' value='false'/>
<property name='pse' type='boolean' value='true'/>
<property name='sep' type='boolean' value='true'/>
<property name='pclmuldq' type='boolean' value='true'/>
<property name='nodeid-msr' type='boolean' value='false'/>
<property name='kvm' type='boolean' value='true'/>
<property name='misalignsse' type='boolean' value='false'/>
<property name='min-xlevel' type='number' value='2147483658'/>
<property name='bmi1' type='boolean' value='true'/>
<property name='bmi2' type='boolean' value='true'/>
<property name='bmi1' type='boolean' value='true'/>
<property name='kvm-pv-unhalt' type='boolean' value='false'/>
<property name='realized' type='boolean' value='false'/>
<property name='tsc_scale' type='boolean' value='false'/>
<property name='tsc-scale' type='boolean' value='false'/>
<property name='topoext' type='boolean' value='false'/>
<property name='hv-vpindex' type='boolean' value='false'/>
<property name='xlevel2' type='number' value='0'/>
<property name='clflushopt' type='boolean' value='true'/>
<property name='monitor' type='boolean' value='true'/>
<property name='avx512er' type='boolean' value='false'/>
@ -524,11 +639,17 @@
<property name='3dnow' type='boolean' value='true'/>
<property name='erms' type='boolean' value='true'/>
<property name='lahf-lm' type='boolean' value='true'/>
<property name='fxsr-opt' type='boolean' value='false'/>
<property name='lahf_lm' type='boolean' value='true'/>
<property name='xstore' type='boolean' value='false'/>
<property name='hv-synic' type='boolean' value='false'/>
<property name='fxsr-opt' type='boolean' value='false'/>
<property name='fxsr_opt' type='boolean' value='false'/>
<property name='rtm' type='boolean' value='false'/>
<property name='lmce' type='boolean' value='false'/>
<property name='hv-time' type='boolean' value='false'/>
<property name='perfctr-nb' type='boolean' value='false'/>
<property name='perfctr_nb' type='boolean' value='false'/>
<property name='ffxsr' type='boolean' value='false'/>
<property name='rdrand' type='boolean' value='false'/>
<property name='rdseed' type='boolean' value='false'/>
<property name='avx512-4vnniw' type='boolean' value='false'/>
@ -540,6 +661,7 @@
<property name='pse36' type='boolean' value='true'/>
<property name='tbm' type='boolean' value='false'/>
<property name='wdt' type='boolean' value='false'/>
<property name='pause_filter' type='boolean' value='false'/>
<property name='model-id' type='string' value='QEMU TCG CPU version 2.5+'/>
<property name='sha-ni' type='boolean' value='false'/>
<property name='abm' type='boolean' value='true'/>