On 02/15/2017 11:44 AM, Jiri Denemark wrote: > The static CPU model expansion is designed to return only canonical > names of all CPU properties. TO maintain backward compatibility libvirt s/TO/To > is stuck with different spelling of some of the features, which is only > returned by the full expansion. But in addition to returned all spelling s/returned/returning > variants for all properties the full expansion will contain properties > which are not guaranteed to be migration compatible. 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@xxxxxxxxxx> > --- > > Notes: > Version 2: > - no change > > src/qemu/qemu_capabilities.c | 10 +- > src/qemu/qemu_monitor.h | 2 + > src/qemu/qemu_monitor_json.c | 28 +- > .../domaincapsschemadata/qemu_2.9.0-tcg.x86_64.xml | 2 - > tests/domaincapsschemadata/qemu_2.9.0.x86_64.xml | 3 +- > .../qemucapabilitiesdata/caps_2.9.0.x86_64.replies | 476 +++++++++++++++++++++ > tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml | 178 ++++++-- > 7 files changed, 657 insertions(+), 42 deletions(-) > > diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c > index 20aaaf8f0..a77e300b7 100644 > --- a/src/qemu/qemu_capabilities.c > +++ b/src/qemu/qemu_capabilities.c > @@ -2844,6 +2844,7 @@ virQEMUCapsProbeQMPHostCPU(virQEMUCapsPtr qemuCaps, > { > qemuMonitorCPUModelInfoPtr *modelInfo; > const char *model; > + qemuMonitorCPUModelExpansionType type; > > if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_QUERY_CPU_MODEL_EXPANSION)) > return 0; > @@ -2856,9 +2857,12 @@ virQEMUCapsProbeQMPHostCPU(virQEMUCapsPtr qemuCaps, > model = "host"; > } > > - return qemuMonitorGetCPUModelExpansion(mon, > - QEMU_MONITOR_CPU_MODEL_EXPANSION_STATIC, > - model, modelInfo); > + 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 { > diff --git a/src/qemu/qemu_monitor.h b/src/qemu/qemu_monitor.h > index b61f1cf54..6407a309f 100644 > --- a/src/qemu/qemu_monitor.h > +++ b/src/qemu/qemu_monitor.h > @@ -950,6 +950,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, > diff --git a/src/qemu/qemu_monitor_json.c b/src/qemu/qemu_monitor_json.c > index dd7907482..0454571c1 100644 > --- a/src/qemu/qemu_monitor_json.c > +++ b/src/qemu/qemu_monitor_json.c > @@ -5026,7 +5026,7 @@ qemuMonitorJSONGetCPUModelExpansion(qemuMonitorPtr mon, > qemuMonitorCPUModelInfoPtr *model_info) > { > int ret = -1; > - virJSONValuePtr model; > + virJSONValuePtr model = NULL; > virJSONValuePtr cmd = NULL; > virJSONValuePtr reply = NULL; > virJSONValuePtr data; > @@ -5038,16 +5038,24 @@ qemuMonitorJSONGetCPUModelExpansion(qemuMonitorPtr mon, > > *model_info = NULL; > > - if (!(model = virJSONValueNewObject())) > - goto cleanup; > + retry: > + if (!model) { > + if (!(model = virJSONValueNewObject())) > + goto cleanup; > > - if (virJSONValueObjectAppendString(model, "name", model_name) < 0) > - goto cleanup; > + if (virJSONValueObjectAppendString(model, "name", model_name) < 0) > + goto cleanup; > + } > > 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", > @@ -5084,6 +5092,16 @@ qemuMonitorJSONGetCPUModelExpansion(qemuMonitorPtr mon, > goto cleanup; > } > > + 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; When you get here, model must be set.. The retry label tests for not set, which cannot be true - so why would the retry label be on the switch statement? If it did move, then the move of the AppendString inside the "if" wouldn't be necessary. > + } > + This just seems odd - it's not really a retry, it's like piling on. To me retry is like trying again because something failed. In this case you get static, but then add on the full afterwards. I don't have a better suggestion for a label name. Obviously things work, another weak ACK (sorry it's just getting late for me and this is a long series)... John > if (!(cpu_name = virJSONValueObjectGetString(cpu_model, "name"))) { > virReportError(VIR_ERR_INTERNAL_ERROR, "%s", > _("query-cpu-model-expansion reply data was missing 'name'")); > diff --git a/tests/domaincapsschemadata/qemu_2.9.0-tcg.x86_64.xml b/tests/domaincapsschemadata/qemu_2.9.0-tcg.x86_64.xml > index 1827b1d6f..573eb4bb6 100644 > --- a/tests/domaincapsschemadata/qemu_2.9.0-tcg.x86_64.xml > +++ b/tests/domaincapsschemadata/qemu_2.9.0-tcg.x86_64.xml > @@ -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'/> > diff --git a/tests/domaincapsschemadata/qemu_2.9.0.x86_64.xml b/tests/domaincapsschemadata/qemu_2.9.0.x86_64.xml > index a7a2ecdea..b361475d7 100644 > --- a/tests/domaincapsschemadata/qemu_2.9.0.x86_64.xml > +++ b/tests/domaincapsschemadata/qemu_2.9.0.x86_64.xml > @@ -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> > diff --git a/tests/qemucapabilitiesdata/caps_2.9.0.x86_64.replies b/tests/qemucapabilitiesdata/caps_2.9.0.x86_64.replies > index 390f40f9f..6b1e9ea8a 100644 > --- a/tests/qemucapabilitiesdata/caps_2.9.0.x86_64.replies > +++ b/tests/qemucapabilitiesdata/caps_2.9.0.x86_64.replies > @@ -14360,6 +14360,244 @@ > > { > "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, > + "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, > + "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": { > }, > "id": "libvirt-1" > } > @@ -14887,3 +15125,241 @@ > }, > "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, > + "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, > + "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" > +} > diff --git a/tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml > index 520bf80f4..aae71b1fc 100644 > --- a/tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml > +++ b/tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml > @@ -206,80 +206,109 @@ > <package> (v2.8.0-877-g38e4b757b4)</package> > <arch>x86_64</arch> > <hostCPU type='kvm' model='base'> > + <property name='phys-bits' ull='0'/> > + <property name='core-id' ull='18446744073709551615'/> > + <property name='xlevel' ull='2147483656'/> > <property name='cmov' boolean='yes'/> > <property name='ia64' boolean='no'/> > <property name='aes' boolean='yes'/> > <property name='mmx' boolean='yes'/> > - <property name='rdpid' boolean='no'/> > <property name='arat' boolean='yes'/> > + <property name='rdpid' boolean='no'/> > <property name='pause-filter' boolean='no'/> > <property name='xsavec' boolean='yes'/> > <property name='osxsave' boolean='no'/> > + <property name='tsc-frequency' ull='0'/> > + <property name='xd' boolean='yes'/> > + <property name='hv-vendor-id' string=''/> > <property name='kvm-asyncpf' boolean='yes'/> > + <property name='kvm_asyncpf' boolean='yes'/> > + <property name='perfctr_core' boolean='no'/> > <property name='perfctr-core' boolean='no'/> > <property name='mpx' boolean='yes'/> > - <property name='pbe' boolean='no'/> > <property name='avx512cd' boolean='no'/> > <property name='decodeassists' boolean='no'/> > + <property name='pbe' boolean='no'/> > + <property name='sse4_1' boolean='yes'/> > <property name='sse4.1' boolean='yes'/> > + <property name='sse4-1' boolean='yes'/> > <property name='family' ull='6'/> > <property name='avx512f' boolean='no'/> > + <property name='xcrypt' boolean='no'/> > + <property name='hv-runtime' boolean='no'/> > <property name='msr' boolean='yes'/> > <property name='mce' boolean='yes'/> > <property name='mca' boolean='yes'/> > - <property name='xcrypt' boolean='no'/> > + <property name='thread-id' ull='18446744073709551615'/> > <property name='min-level' ull='13'/> > <property name='xgetbv1' boolean='yes'/> > <property name='cid' boolean='no'/> > - <property name='ds' boolean='no'/> > + <property name='hv-relaxed' boolean='no'/> > <property name='fxsr' boolean='yes'/> > + <property name='ds' boolean='no'/> > + <property name='hv-crash' boolean='no'/> > <property name='xsaveopt' boolean='yes'/> > <property name='xtpr' boolean='no'/> > - <property name='avx512vl' boolean='no'/> > <property name='avx512-vpopcntdq' boolean='no'/> > <property name='phe' boolean='no'/> > + <property name='avx512vl' boolean='no'/> > <property name='extapic' boolean='no'/> > <property name='3dnowprefetch' boolean='yes'/> > <property name='cr8legacy' boolean='no'/> > + <property name='cpuid-0xb' boolean='yes'/> > <property name='xcrypt-en' boolean='no'/> > + <property name='kvm_pv_eoi' boolean='yes'/> > + <property name='apic-id' ull='4294967295'/> > <property name='pn' boolean='no'/> > <property name='dca' boolean='no'/> > <property name='vendor' string='GenuineIntel'/> > <property name='pku' boolean='no'/> > <property name='smx' boolean='no'/> > <property name='cmp-legacy' boolean='no'/> > + <property name='cmp_legacy' boolean='no'/> > <property name='avx512-4fmaps' boolean='no'/> > <property name='vmcb-clean' boolean='no'/> > - <property name='hle' boolean='yes'/> > + <property name='vmcb_clean' boolean='no'/> > <property name='3dnowext' boolean='no'/> > + <property name='hle' boolean='yes'/> > <property name='npt' boolean='no'/> > + <property name='memory' string='/machine/unattached/system[0]'/> > <property name='clwb' boolean='no'/> > <property name='lbrv' boolean='no'/> > <property name='adx' boolean='yes'/> > <property name='ss' boolean='yes'/> > <property name='pni' boolean='yes'/> > + <property name='svm_lock' boolean='no'/> > <property name='svm-lock' boolean='no'/> > <property name='smep' boolean='yes'/> > - <property name='smap' boolean='yes'/> > <property name='pfthreshold' boolean='no'/> > + <property name='smap' boolean='yes'/> > <property name='x2apic' boolean='yes'/> > <property name='avx512vbmi' boolean='no'/> > + <property name='hv-stimer' boolean='no'/> > + <property name='i64' boolean='yes'/> > <property name='flushbyasid' boolean='no'/> > <property name='f16c' boolean='yes'/> > <property name='ace2-en' boolean='no'/> > - <property name='pae' boolean='yes'/> > <property name='pat' boolean='yes'/> > + <property name='pae' boolean='yes'/> > <property name='sse' boolean='yes'/> > <property name='phe-en' boolean='no'/> > <property name='kvm-nopiodelay' boolean='yes'/> > + <property name='kvm_nopiodelay' boolean='yes'/> > <property name='tm' boolean='no'/> > <property name='kvmclock-stable-bit' boolean='yes'/> > <property name='hypervisor' boolean='yes'/> > + <property name='socket-id' ull='18446744073709551615'/> > <property name='pcommit' boolean='no'/> > <property name='syscall' boolean='yes'/> > + <property name='level' ull='13'/> > <property name='avx512dq' boolean='no'/> > <property name='svm' boolean='no'/> > + <property name='full-cpuid-auto-level' boolean='yes'/> > + <property name='hv-reset' boolean='no'/> > <property name='invtsc' boolean='no'/> > + <property name='sse3' boolean='yes'/> > <property name='sse2' boolean='yes'/> > <property name='est' boolean='no'/> > <property name='avx512ifma' boolean='no'/> > @@ -287,44 +316,61 @@ > <property name='kvm-pv-eoi' boolean='yes'/> > <property name='cx8' boolean='yes'/> > <property name='kvm-mmu' boolean='no'/> > + <property name='kvm_mmu' boolean='no'/> > + <property name='sse4_2' boolean='yes'/> > <property name='sse4.2' boolean='yes'/> > + <property name='sse4-2' boolean='yes'/> > <property name='pge' boolean='yes'/> > + <property name='fill-mtrr-mask' boolean='yes'/> > <property name='pdcm' boolean='no'/> > + <property name='nodeid_msr' boolean='no'/> > <property name='model' ull='94'/> > <property name='movbe' boolean='yes'/> > <property name='nrip-save' boolean='no'/> > - <property name='ssse3' boolean='yes'/> > + <property name='nrip_save' boolean='no'/> > <property name='sse4a' boolean='no'/> > + <property name='ssse3' boolean='yes'/> > + <property name='kvm_pv_unhalt' boolean='yes'/> > <property name='invpcid' boolean='yes'/> > <property name='pdpe1gb' boolean='yes'/> > <property name='tsc-deadline' boolean='yes'/> > <property name='fma' boolean='yes'/> > <property name='cx16' boolean='yes'/> > <property name='de' boolean='yes'/> > + <property name='enforce' boolean='no'/> > <property name='stepping' ull='3'/> > <property name='xsave' boolean='yes'/> > <property name='clflush' boolean='yes'/> > <property name='skinit' boolean='no'/> > - <property name='tsc' boolean='yes'/> > <property name='tce' boolean='no'/> > + <property name='tsc' boolean='yes'/> > <property name='fpu' boolean='yes'/> > <property name='ds-cpl' boolean='no'/> > + <property name='ds_cpl' boolean='no'/> > <property name='ibs' boolean='no'/> > + <property name='host-phys-bits' boolean='no'/> > <property name='fma4' boolean='no'/> > <property name='la57' boolean='no'/> > <property name='osvw' boolean='no'/> > - <property name='apic' boolean='yes'/> > + <property name='check' boolean='yes'/> > <property name='pmm' boolean='no'/> > + <property name='apic' boolean='yes'/> > + <property name='pmu' boolean='no'/> > + <property name='min-xlevel2' ull='0'/> > <property name='tsc-adjust' boolean='yes'/> > + <property name='tsc_adjust' boolean='yes'/> > <property name='kvm-steal-time' boolean='yes'/> > + <property name='kvm_steal_time' boolean='yes'/> > <property name='kvmclock' boolean='yes'/> > + <property name='l3-cache' boolean='yes'/> > <property name='lwp' boolean='no'/> > <property name='xop' boolean='no'/> > <property name='avx' boolean='yes'/> > <property name='ospke' boolean='no'/> > + <property name='ace2' boolean='no'/> > <property name='acpi' boolean='no'/> > <property name='avx512bw' boolean='no'/> > - <property name='ace2' boolean='no'/> > + <property name='hv-vapic' boolean='no'/> > <property name='fsgsbase' boolean='yes'/> > <property name='ht' boolean='no'/> > <property name='nx' boolean='yes'/> > @@ -334,17 +380,23 @@ > <property name='xsaves' boolean='yes'/> > <property name='lm' boolean='yes'/> > <property name='umip' boolean='no'/> > - <property name='pse' boolean='yes'/> > <property name='avx2' boolean='yes'/> > + <property name='pse' boolean='yes'/> > <property name='sep' boolean='yes'/> > + <property name='pclmuldq' boolean='yes'/> > <property name='nodeid-msr' boolean='no'/> > + <property name='kvm' boolean='yes'/> > <property name='misalignsse' boolean='no'/> > <property name='min-xlevel' ull='2147483656'/> > - <property name='bmi1' boolean='yes'/> > <property name='bmi2' boolean='yes'/> > + <property name='bmi1' boolean='yes'/> > <property name='kvm-pv-unhalt' boolean='yes'/> > + <property name='realized' boolean='no'/> > + <property name='tsc_scale' boolean='no'/> > <property name='tsc-scale' boolean='no'/> > <property name='topoext' boolean='no'/> > + <property name='hv-vpindex' boolean='no'/> > + <property name='xlevel2' ull='0'/> > <property name='clflushopt' boolean='yes'/> > <property name='monitor' boolean='no'/> > <property name='avx512er' boolean='no'/> > @@ -353,11 +405,17 @@ > <property name='3dnow' boolean='no'/> > <property name='erms' boolean='yes'/> > <property name='lahf-lm' boolean='yes'/> > - <property name='fxsr-opt' boolean='no'/> > + <property name='lahf_lm' boolean='yes'/> > <property name='xstore' boolean='no'/> > + <property name='hv-synic' boolean='no'/> > + <property name='fxsr-opt' boolean='no'/> > + <property name='fxsr_opt' boolean='no'/> > <property name='rtm' boolean='yes'/> > <property name='lmce' boolean='yes'/> > + <property name='hv-time' boolean='no'/> > <property name='perfctr-nb' boolean='no'/> > + <property name='perfctr_nb' boolean='no'/> > + <property name='ffxsr' boolean='no'/> > <property name='rdrand' boolean='yes'/> > <property name='rdseed' boolean='yes'/> > <property name='avx512-4vnniw' boolean='no'/> > @@ -369,6 +427,7 @@ > <property name='pse36' boolean='yes'/> > <property name='tbm' boolean='no'/> > <property name='wdt' boolean='no'/> > + <property name='pause_filter' boolean='no'/> > <property name='model-id' string='Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz'/> > <property name='sha-ni' boolean='no'/> > <property name='abm' boolean='yes'/> > @@ -376,80 +435,109 @@ > <property name='xstore-en' boolean='no'/> > </hostCPU> > <hostCPU type='tcg' model='base'> > + <property name='phys-bits' ull='0'/> > + <property name='core-id' ull='18446744073709551615'/> > + <property name='xlevel' ull='2147483658'/> > <property name='cmov' boolean='yes'/> > <property name='ia64' boolean='no'/> > <property name='aes' boolean='yes'/> > <property name='mmx' boolean='yes'/> > - <property name='rdpid' boolean='no'/> > <property name='arat' boolean='yes'/> > + <property name='rdpid' boolean='no'/> > <property name='pause-filter' boolean='no'/> > <property name='xsavec' boolean='no'/> > <property name='osxsave' boolean='no'/> > + <property name='tsc-frequency' ull='0'/> > + <property name='xd' boolean='yes'/> > + <property name='hv-vendor-id' string=''/> > <property name='kvm-asyncpf' boolean='no'/> > + <property name='kvm_asyncpf' boolean='no'/> > + <property name='perfctr_core' boolean='no'/> > <property name='perfctr-core' boolean='no'/> > <property name='mpx' boolean='yes'/> > - <property name='pbe' boolean='no'/> > <property name='avx512cd' boolean='no'/> > <property name='decodeassists' boolean='no'/> > + <property name='pbe' boolean='no'/> > + <property name='sse4_1' boolean='yes'/> > <property name='sse4.1' boolean='yes'/> > + <property name='sse4-1' boolean='yes'/> > <property name='family' ull='6'/> > <property name='avx512f' boolean='no'/> > + <property name='xcrypt' boolean='no'/> > + <property name='hv-runtime' boolean='no'/> > <property name='msr' boolean='yes'/> > <property name='mce' boolean='yes'/> > <property name='mca' boolean='yes'/> > - <property name='xcrypt' boolean='no'/> > + <property name='thread-id' ull='18446744073709551615'/> > <property name='min-level' ull='13'/> > <property name='xgetbv1' boolean='yes'/> > <property name='cid' boolean='no'/> > - <property name='ds' boolean='no'/> > + <property name='hv-relaxed' boolean='no'/> > <property name='fxsr' boolean='yes'/> > + <property name='ds' boolean='no'/> > + <property name='hv-crash' boolean='no'/> > <property name='xsaveopt' boolean='yes'/> > <property name='xtpr' boolean='no'/> > - <property name='avx512vl' boolean='no'/> > <property name='avx512-vpopcntdq' boolean='no'/> > <property name='phe' boolean='no'/> > + <property name='avx512vl' boolean='no'/> > <property name='extapic' boolean='no'/> > <property name='3dnowprefetch' boolean='no'/> > <property name='cr8legacy' boolean='yes'/> > + <property name='cpuid-0xb' boolean='yes'/> > <property name='xcrypt-en' boolean='no'/> > + <property name='kvm_pv_eoi' boolean='no'/> > + <property name='apic-id' ull='4294967295'/> > <property name='pn' boolean='no'/> > <property name='dca' boolean='no'/> > <property name='vendor' string='AuthenticAMD'/> > <property name='pku' boolean='yes'/> > <property name='smx' boolean='no'/> > <property name='cmp-legacy' boolean='no'/> > + <property name='cmp_legacy' boolean='no'/> > <property name='avx512-4fmaps' boolean='no'/> > <property name='vmcb-clean' boolean='no'/> > - <property name='hle' boolean='no'/> > + <property name='vmcb_clean' boolean='no'/> > <property name='3dnowext' boolean='yes'/> > + <property name='hle' boolean='no'/> > <property name='npt' boolean='no'/> > + <property name='memory' string='/machine/unattached/system[0]'/> > <property name='clwb' boolean='yes'/> > <property name='lbrv' boolean='no'/> > <property name='adx' boolean='yes'/> > <property name='ss' boolean='yes'/> > <property name='pni' boolean='yes'/> > + <property name='svm_lock' boolean='no'/> > <property name='svm-lock' boolean='no'/> > <property name='smep' boolean='yes'/> > - <property name='smap' boolean='yes'/> > <property name='pfthreshold' boolean='no'/> > + <property name='smap' boolean='yes'/> > <property name='x2apic' boolean='no'/> > <property name='avx512vbmi' boolean='no'/> > + <property name='hv-stimer' boolean='no'/> > + <property name='i64' boolean='yes'/> > <property name='flushbyasid' boolean='no'/> > <property name='f16c' boolean='no'/> > <property name='ace2-en' boolean='no'/> > - <property name='pae' boolean='yes'/> > <property name='pat' boolean='yes'/> > + <property name='pae' boolean='yes'/> > <property name='sse' boolean='yes'/> > <property name='phe-en' boolean='no'/> > <property name='kvm-nopiodelay' boolean='no'/> > + <property name='kvm_nopiodelay' boolean='no'/> > <property name='tm' boolean='no'/> > <property name='kvmclock-stable-bit' boolean='no'/> > <property name='hypervisor' boolean='yes'/> > + <property name='socket-id' ull='18446744073709551615'/> > <property name='pcommit' boolean='yes'/> > <property name='syscall' boolean='yes'/> > + <property name='level' ull='13'/> > <property name='avx512dq' boolean='no'/> > <property name='svm' boolean='yes'/> > + <property name='full-cpuid-auto-level' boolean='yes'/> > + <property name='hv-reset' boolean='no'/> > <property name='invtsc' boolean='no'/> > + <property name='sse3' boolean='yes'/> > <property name='sse2' boolean='yes'/> > <property name='est' boolean='no'/> > <property name='avx512ifma' boolean='no'/> > @@ -457,44 +545,61 @@ > <property name='kvm-pv-eoi' boolean='no'/> > <property name='cx8' boolean='yes'/> > <property name='kvm-mmu' boolean='no'/> > + <property name='kvm_mmu' boolean='no'/> > + <property name='sse4_2' boolean='yes'/> > <property name='sse4.2' boolean='yes'/> > + <property name='sse4-2' boolean='yes'/> > <property name='pge' boolean='yes'/> > + <property name='fill-mtrr-mask' boolean='yes'/> > <property name='pdcm' boolean='no'/> > + <property name='nodeid_msr' boolean='no'/> > <property name='model' ull='6'/> > <property name='movbe' boolean='yes'/> > <property name='nrip-save' boolean='no'/> > - <property name='ssse3' boolean='yes'/> > + <property name='nrip_save' boolean='no'/> > <property name='sse4a' boolean='yes'/> > + <property name='ssse3' boolean='yes'/> > + <property name='kvm_pv_unhalt' boolean='no'/> > <property name='invpcid' boolean='no'/> > <property name='pdpe1gb' boolean='yes'/> > <property name='tsc-deadline' boolean='no'/> > <property name='fma' boolean='no'/> > <property name='cx16' boolean='yes'/> > <property name='de' boolean='yes'/> > + <property name='enforce' boolean='no'/> > <property name='stepping' ull='3'/> > <property name='xsave' boolean='yes'/> > <property name='clflush' boolean='yes'/> > <property name='skinit' boolean='no'/> > - <property name='tsc' boolean='yes'/> > <property name='tce' boolean='no'/> > + <property name='tsc' boolean='yes'/> > <property name='fpu' boolean='yes'/> > <property name='ds-cpl' boolean='no'/> > + <property name='ds_cpl' boolean='no'/> > <property name='ibs' boolean='no'/> > + <property name='host-phys-bits' boolean='no'/> > <property name='fma4' boolean='no'/> > <property name='la57' boolean='yes'/> > <property name='osvw' boolean='no'/> > - <property name='apic' boolean='yes'/> > + <property name='check' boolean='yes'/> > <property name='pmm' boolean='no'/> > + <property name='apic' boolean='yes'/> > + <property name='pmu' boolean='no'/> > + <property name='min-xlevel2' ull='0'/> > <property name='tsc-adjust' boolean='no'/> > + <property name='tsc_adjust' boolean='no'/> > <property name='kvm-steal-time' boolean='no'/> > + <property name='kvm_steal_time' boolean='no'/> > <property name='kvmclock' boolean='no'/> > + <property name='l3-cache' boolean='yes'/> > <property name='lwp' boolean='no'/> > <property name='xop' boolean='no'/> > <property name='avx' boolean='no'/> > <property name='ospke' boolean='yes'/> > + <property name='ace2' boolean='no'/> > <property name='acpi' boolean='yes'/> > <property name='avx512bw' boolean='no'/> > - <property name='ace2' boolean='no'/> > + <property name='hv-vapic' boolean='no'/> > <property name='fsgsbase' boolean='yes'/> > <property name='ht' boolean='no'/> > <property name='nx' boolean='yes'/> > @@ -504,17 +609,23 @@ > <property name='xsaves' boolean='no'/> > <property name='lm' boolean='yes'/> > <property name='umip' boolean='no'/> > - <property name='pse' boolean='yes'/> > <property name='avx2' boolean='no'/> > + <property name='pse' boolean='yes'/> > <property name='sep' boolean='yes'/> > + <property name='pclmuldq' boolean='yes'/> > <property name='nodeid-msr' boolean='no'/> > + <property name='kvm' boolean='yes'/> > <property name='misalignsse' boolean='no'/> > <property name='min-xlevel' ull='2147483658'/> > - <property name='bmi1' boolean='yes'/> > <property name='bmi2' boolean='yes'/> > + <property name='bmi1' boolean='yes'/> > <property name='kvm-pv-unhalt' boolean='no'/> > + <property name='realized' boolean='no'/> > + <property name='tsc_scale' boolean='no'/> > <property name='tsc-scale' boolean='no'/> > <property name='topoext' boolean='no'/> > + <property name='hv-vpindex' boolean='no'/> > + <property name='xlevel2' ull='0'/> > <property name='clflushopt' boolean='yes'/> > <property name='monitor' boolean='yes'/> > <property name='avx512er' boolean='no'/> > @@ -523,11 +634,17 @@ > <property name='3dnow' boolean='yes'/> > <property name='erms' boolean='yes'/> > <property name='lahf-lm' boolean='yes'/> > - <property name='fxsr-opt' boolean='no'/> > + <property name='lahf_lm' boolean='yes'/> > <property name='xstore' boolean='no'/> > + <property name='hv-synic' boolean='no'/> > + <property name='fxsr-opt' boolean='no'/> > + <property name='fxsr_opt' boolean='no'/> > <property name='rtm' boolean='no'/> > <property name='lmce' boolean='no'/> > + <property name='hv-time' boolean='no'/> > <property name='perfctr-nb' boolean='no'/> > + <property name='perfctr_nb' boolean='no'/> > + <property name='ffxsr' boolean='no'/> > <property name='rdrand' boolean='no'/> > <property name='rdseed' boolean='no'/> > <property name='avx512-4vnniw' boolean='no'/> > @@ -539,6 +656,7 @@ > <property name='pse36' boolean='yes'/> > <property name='tbm' boolean='no'/> > <property name='wdt' boolean='no'/> > + <property name='pause_filter' boolean='no'/> > <property name='model-id' string='QEMU TCG CPU version 2.5+'/> > <property name='sha-ni' boolean='no'/> > <property name='abm' boolean='yes'/> > -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list