[libvirt] [PATCH 0/3] Update some recent/previous x86_64 qemu capabilities

The existing 2.12 and 3.1 caps are based on a pre-release RC, so update to at least the release version. The 3.0 caps were missing the sev-guest (as were the 3.1 caps), so hand massage the .replies output to make sure they're added. There really "should be" some way to do these automagically... With these in place review of Nikolay's upstream posting related to using l2 cache will be "cleaner"... John Ferlan (3): qemu: Update x86_64 QEMU 2.12.0 capabilities qemu: Update x86_64 QEMU 3.0.0 capabilities qemu: Update x86_64 QEMU 3.1.0 capabilities .../qemu_2.12.0.x86_64.xml | 37 +- .../caps_2.12.0.x86_64.replies | 513 +++++++++--------- .../caps_2.12.0.x86_64.xml | 182 ++----- .../caps_3.0.0.x86_64.replies | 73 +-- .../caps_3.0.0.x86_64.xml | 19 +- .../caps_3.1.0.x86_64.replies | 93 ++-- .../caps_3.1.0.x86_64.xml | 28 +- 7 files changed, 412 insertions(+), 533 deletions(-) -- 2.20.1

Regenerate the output from the QEMU v2.12.0 tag using ./configure --target-list=x86_64-softmmu \ --disable-strip \ --disable-fdt \ --disable-xen \ --disable-werror \ --enable-debug \ --enable-system \ --enable-user \ --enable-linux-user \ --with-pkgversion=v2.12.0 NB: I had to fudge in the qemu-sev-capabilities output from commit d4005609f3 (not sure if there's a specific package to allow it just from build). Also had to rebuild domcapabilities output due to CPU changes. Signed-off-by: John Ferlan <jferlan@redhat.com> --- .../qemu_2.12.0.x86_64.xml | 37 +- .../caps_2.12.0.x86_64.replies | 513 +++++++++--------- .../caps_2.12.0.x86_64.xml | 182 ++----- 3 files changed, 300 insertions(+), 432 deletions(-) diff --git a/tests/domaincapsschemadata/qemu_2.12.0.x86_64.xml b/tests/domaincapsschemadata/qemu_2.12.0.x86_64.xml index a8d6a4d629..b2e70fb581 100644 --- a/tests/domaincapsschemadata/qemu_2.12.0.x86_64.xml +++ b/tests/domaincapsschemadata/qemu_2.12.0.x86_64.xml @@ -23,18 +23,15 @@ <cpu> <mode name='host-passthrough' supported='yes'/> <mode name='host-model' supported='yes'> - <model fallback='forbid'>Haswell-noTSX</model> + <model fallback='forbid'>Skylake-Client-IBRS</model> <vendor>Intel</vendor> - <feature policy='require' name='vme'/> <feature policy='require' name='ss'/> - <feature policy='require' name='f16c'/> - <feature policy='require' name='rdrand'/> <feature policy='require' name='hypervisor'/> - <feature policy='require' name='arat'/> <feature policy='require' name='tsc_adjust'/> - <feature policy='require' name='xsaveopt'/> + <feature policy='require' name='clflushopt'/> + <feature policy='require' name='umip'/> + <feature policy='require' name='xsaves'/> <feature policy='require' name='pdpe1gb'/> - <feature policy='require' name='abm'/> <feature policy='require' name='invtsc'/> </mode> <mode name='custom' supported='yes'> @@ -51,13 +48,13 @@ <model usable='yes'>core2duo</model> <model usable='no'>athlon</model> <model usable='yes'>Westmere</model> - <model usable='no'>Westmere-IBRS</model> + <model usable='yes'>Westmere-IBRS</model> <model usable='no'>Skylake-Server</model> <model usable='no'>Skylake-Server-IBRS</model> - <model usable='no'>Skylake-Client</model> - <model usable='no'>Skylake-Client-IBRS</model> + <model usable='yes'>Skylake-Client</model> + <model usable='yes'>Skylake-Client-IBRS</model> <model usable='yes'>SandyBridge</model> - <model usable='no'>SandyBridge-IBRS</model> + <model usable='yes'>SandyBridge-IBRS</model> <model usable='yes'>Penryn</model> <model usable='no'>Opteron_G5</model> <model usable='no'>Opteron_G4</model> @@ -65,20 +62,20 @@ <model usable='yes'>Opteron_G2</model> <model usable='yes'>Opteron_G1</model> <model usable='yes'>Nehalem</model> - <model usable='no'>Nehalem-IBRS</model> + <model usable='yes'>Nehalem-IBRS</model> <model usable='yes'>IvyBridge</model> - <model usable='no'>IvyBridge-IBRS</model> - <model usable='no'>Haswell</model> + <model usable='yes'>IvyBridge-IBRS</model> + <model usable='yes'>Haswell</model> <model usable='yes'>Haswell-noTSX</model> - <model usable='no'>Haswell-noTSX-IBRS</model> - <model usable='no'>Haswell-IBRS</model> + <model usable='yes'>Haswell-noTSX-IBRS</model> + <model usable='yes'>Haswell-IBRS</model> <model usable='no'>EPYC</model> <model usable='no'>EPYC-IBPB</model> <model usable='yes'>Conroe</model> - <model usable='no'>Broadwell</model> - <model usable='no'>Broadwell-noTSX</model> - <model usable='no'>Broadwell-noTSX-IBRS</model> - <model usable='no'>Broadwell-IBRS</model> + <model usable='yes'>Broadwell</model> + <model usable='yes'>Broadwell-noTSX</model> + <model usable='yes'>Broadwell-noTSX-IBRS</model> + <model usable='yes'>Broadwell-IBRS</model> <model usable='yes'>486</model> </mode> </cpu> diff --git a/tests/qemucapabilitiesdata/caps_2.12.0.x86_64.replies b/tests/qemucapabilitiesdata/caps_2.12.0.x86_64.replies index 7ba3efaf4f..3b5df8a566 100644 --- a/tests/qemucapabilitiesdata/caps_2.12.0.x86_64.replies +++ b/tests/qemucapabilitiesdata/caps_2.12.0.x86_64.replies @@ -17,11 +17,11 @@ { "return": { "qemu": { - "micro": 90, - "minor": 11, + "micro": 0, + "minor": 12, "major": 2 }, - "package": "v2.12.0-rc0" + "package": "v2.12.0" }, "id": "libvirt-2" } @@ -3243,102 +3243,93 @@ { "return": [ { - "name": "serial", - "type": "str" - }, - { - "name": "port_index", + "name": "min_io_size", "type": "uint16" }, { - "name": "dpofua", + "name": "removable", "description": "on/off", "type": "bool" }, { - "name": "bootindex", - "type": "int32" - }, - { - "name": "logical_block_size", - "description": "A power of two between 512 and 32768", - "type": "uint16" + "name": "channel", + "type": "uint32" }, { - "name": "discard_granularity", - "type": "uint32" + "name": "serial", + "type": "str" }, { "name": "lun", "type": "uint32" }, { - "name": "max_unmap_size", - "type": "uint64" + "name": "dpofua", + "description": "on/off", + "type": "bool" }, { - "name": "drive", - "description": "Node name or ID of a block device to use as a backend", + "name": "ver", "type": "str" }, { - "name": "port_wwn", - "type": "uint64" - }, - { - "name": "write-cache", - "description": "on/off/auto", - "type": "OnOffAuto" - }, - { - "name": "share-rw", - "type": "bool" - }, - { - "name": "opt_io_size", + "name": "scsi-id", "type": "uint32" }, { - "name": "min_io_size", + "name": "logical_block_size", + "description": "A power of two between 512 and 32768", "type": "uint16" }, { - "name": "product", + "name": "drive", + "description": "Node name or ID of a block device to use as a backend", "type": "str" }, { - "name": "scsi-id", - "type": "uint32" + "name": "scsi_version", + "type": "int32" }, { - "name": "channel", + "name": "werror", + "description": "Error handling policy, report/ignore/enospc/stop/auto", + "type": "BlockdevOnError" + }, + { + "name": "discard_granularity", "type": "uint32" }, { - "name": "vendor", - "type": "str" + "name": "port_wwn", + "type": "uint64" }, { - "name": "wwn", + "name": "max_unmap_size", "type": "uint64" }, { - "name": "werror", + "name": "rerror", "description": "Error handling policy, report/ignore/enospc/stop/auto", "type": "BlockdevOnError" }, { - "name": "removable", - "description": "on/off", + "name": "max_io_size", + "type": "uint64" + }, + { + "name": "wwn", + "type": "uint64" + }, + { + "name": "share-rw", "type": "bool" }, { - "name": "rerror", - "description": "Error handling policy, report/ignore/enospc/stop/auto", - "type": "BlockdevOnError" + "name": "product", + "type": "str" }, { - "name": "ver", + "name": "vendor", "type": "str" }, { @@ -3347,8 +3338,21 @@ "type": "uint16" }, { - "name": "max_io_size", - "type": "uint64" + "name": "port_index", + "type": "uint16" + }, + { + "name": "bootindex", + "type": "int32" + }, + { + "name": "write-cache", + "description": "on/off/auto", + "type": "OnOffAuto" + }, + { + "name": "opt_io_size", + "type": "uint32" } ], "id": "libvirt-15" @@ -4142,6 +4146,11 @@ "name": "vectors", "type": "uint32" }, + { + "name": "iommu_platform", + "description": "on/off", + "type": "bool" + }, { "name": "x-pcie-extcap-init", "description": "on/off", @@ -4159,13 +4168,18 @@ "name": "x-ignore-backend-features", "type": "bool" }, + { + "name": "stats", + "description": "on/off", + "type": "bool" + }, { "name": "notify_on_empty", "description": "on/off", "type": "bool" }, { - "name": "iommu_platform", + "name": "virtio-pci-bus-master-bug-migration", "description": "on/off", "type": "bool" }, @@ -4175,7 +4189,7 @@ "type": "bool" }, { - "name": "virtio-pci-bus-master-bug-migration", + "name": "virgl", "description": "on/off", "type": "bool" }, @@ -4221,19 +4235,29 @@ "name": "yres", "type": "uint32" }, + { + "name": "stats", + "description": "on/off", + "type": "bool" + }, { "name": "iommu_platform", "description": "on/off", "type": "bool" }, { - "name": "max_outputs", + "name": "xres", "type": "uint32" }, { - "name": "xres", + "name": "max_outputs", "type": "uint32" }, + { + "name": "virgl", + "description": "on/off", + "type": "bool" + }, { "name": "max_hostmem", "type": "size" @@ -4761,9 +4785,33 @@ { "return": [ + { + "name": "slot", + "type": "int32" + }, + { + "name": "node", + "type": "uint32" + }, + { + "name": "size", + "type": "uint64" + }, + { + "name": "unarmed", + "type": "bool" + }, + { + "name": "label-size", + "type": "int" + }, { "name": "memdev", "type": "link<memory-backend>" + }, + { + "name": "addr", + "type": "uint64" } ], "id": "libvirt-35" @@ -4846,25 +4894,29 @@ "type": "HostMemPolicy" }, { - "name": "share", + "name": "dump", "type": "bool" }, { - "name": "host-nodes", - "type": "int" + "name": "share", + "type": "bool" }, { "name": "prealloc", "type": "bool" }, { - "name": "dump", - "type": "bool" + "name": "size", + "type": "int" }, { - "name": "size", + "name": "host-nodes", "type": "int" }, + { + "name": "id", + "type": "string" + }, { "name": "merge", "type": "bool" @@ -5257,7 +5309,6 @@ "name": "Westmere-IBRS", "typename": "Westmere-IBRS-x86_64-cpu", "unavailable-features": [ - "spec-ctrl" ], "static": false, "migration-safe": true @@ -5266,24 +5317,12 @@ "name": "Skylake-Server", "typename": "Skylake-Server-x86_64-cpu", "unavailable-features": [ - "hle", - "rtm", - "mpx", "avx512f", "avx512dq", - "rdseed", - "adx", - "smap", - "clflushopt", "clwb", "avx512cd", "avx512bw", "avx512vl", - "3dnowprefetch", - "xsavec", - "xgetbv1", - "mpx", - "mpx", "avx512f", "avx512f", "avx512f" @@ -5295,24 +5334,12 @@ "name": "Skylake-Server-IBRS", "typename": "Skylake-Server-IBRS-x86_64-cpu", "unavailable-features": [ - "hle", - "rtm", - "mpx", "avx512f", "avx512dq", - "rdseed", - "adx", - "smap", "clwb", "avx512cd", "avx512bw", "avx512vl", - "spec-ctrl", - "3dnowprefetch", - "xsavec", - "xgetbv1", - "mpx", - "mpx", "avx512f", "avx512f", "avx512f" @@ -5324,17 +5351,6 @@ "name": "Skylake-Client", "typename": "Skylake-Client-x86_64-cpu", "unavailable-features": [ - "hle", - "rtm", - "mpx", - "rdseed", - "adx", - "smap", - "3dnowprefetch", - "xsavec", - "xgetbv1", - "mpx", - "mpx" ], "static": false, "migration-safe": true @@ -5343,18 +5359,6 @@ "name": "Skylake-Client-IBRS", "typename": "Skylake-Client-IBRS-x86_64-cpu", "unavailable-features": [ - "hle", - "rtm", - "mpx", - "rdseed", - "adx", - "smap", - "spec-ctrl", - "3dnowprefetch", - "xsavec", - "xgetbv1", - "mpx", - "mpx" ], "static": false, "migration-safe": true @@ -5371,7 +5375,6 @@ "name": "SandyBridge-IBRS", "typename": "SandyBridge-IBRS-x86_64-cpu", "unavailable-features": [ - "spec-ctrl" ], "static": false, "migration-safe": true @@ -5390,7 +5393,6 @@ "unavailable-features": [ "sse4a", "misalignsse", - "3dnowprefetch", "xop", "fma4", "tbm" @@ -5404,7 +5406,6 @@ "unavailable-features": [ "sse4a", "misalignsse", - "3dnowprefetch", "xop", "fma4" ], @@ -5449,7 +5450,6 @@ "name": "Nehalem-IBRS", "typename": "Nehalem-IBRS-x86_64-cpu", "unavailable-features": [ - "spec-ctrl" ], "static": false, "migration-safe": true @@ -5466,7 +5466,6 @@ "name": "IvyBridge-IBRS", "typename": "IvyBridge-IBRS-x86_64-cpu", "unavailable-features": [ - "spec-ctrl" ], "static": false, "migration-safe": true @@ -5475,8 +5474,6 @@ "name": "Haswell", "typename": "Haswell-x86_64-cpu", "unavailable-features": [ - "hle", - "rtm" ], "static": false, "migration-safe": true @@ -5493,7 +5490,6 @@ "name": "Haswell-noTSX-IBRS", "typename": "Haswell-noTSX-IBRS-x86_64-cpu", "unavailable-features": [ - "spec-ctrl" ], "static": false, "migration-safe": true @@ -5502,9 +5498,6 @@ "name": "Haswell-IBRS", "typename": "Haswell-IBRS-x86_64-cpu", "unavailable-features": [ - "hle", - "rtm", - "spec-ctrl" ], "static": false, "migration-safe": true @@ -5513,20 +5506,13 @@ "name": "EPYC", "typename": "EPYC-x86_64-cpu", "unavailable-features": [ - "rdseed", - "adx", - "smap", - "clflushopt", "sha-ni", "mmxext", "fxsr-opt", "cr8legacy", "sse4a", "misalignsse", - "3dnowprefetch", - "osvw", - "xsavec", - "xgetbv1" + "osvw" ], "static": false, "migration-safe": true @@ -5535,21 +5521,14 @@ "name": "EPYC-IBPB", "typename": "EPYC-IBPB-x86_64-cpu", "unavailable-features": [ - "rdseed", - "adx", - "smap", - "clflushopt", "sha-ni", "mmxext", "fxsr-opt", "cr8legacy", "sse4a", "misalignsse", - "3dnowprefetch", "osvw", - "ibpb", - "xsavec", - "xgetbv1" + "ibpb" ], "static": false, "migration-safe": true @@ -5566,12 +5545,6 @@ "name": "Broadwell", "typename": "Broadwell-x86_64-cpu", "unavailable-features": [ - "hle", - "rtm", - "rdseed", - "adx", - "smap", - "3dnowprefetch" ], "static": false, "migration-safe": true @@ -5580,10 +5553,6 @@ "name": "Broadwell-noTSX", "typename": "Broadwell-noTSX-x86_64-cpu", "unavailable-features": [ - "rdseed", - "adx", - "smap", - "3dnowprefetch" ], "static": false, "migration-safe": true @@ -5592,11 +5561,6 @@ "name": "Broadwell-noTSX-IBRS", "typename": "Broadwell-noTSX-IBRS-x86_64-cpu", "unavailable-features": [ - "rdseed", - "adx", - "smap", - "spec-ctrl", - "3dnowprefetch" ], "static": false, "migration-safe": true @@ -5605,13 +5569,6 @@ "name": "Broadwell-IBRS", "typename": "Broadwell-IBRS-x86_64-cpu", "unavailable-features": [ - "hle", - "rtm", - "rdseed", - "adx", - "smap", - "spec-ctrl", - "3dnowprefetch" ], "static": false, "migration-safe": true @@ -5787,6 +5744,14 @@ }, { "parameters": [ + { + "name": "rendernode", + "type": "string" + }, + { + "name": "gl", + "type": "boolean" + }, { "name": "head", "type": "number" @@ -6488,6 +6453,10 @@ }, { "parameters": [ + { + "name": "x-oob", + "type": "boolean" + }, { "name": "pretty", "type": "boolean" @@ -14644,9 +14613,9 @@ "type": "int" }, { - "name": "static", + "name": "preallocation", "default": null, - "type": "bool" + "type": "356" } ], "meta-type": "object" @@ -18410,12 +18379,12 @@ "arat": true, "gfni": false, "pause-filter": false, - "xsavec": false, + "xsavec": true, "intel-pt": false, "osxsave": false, "kvm-asyncpf": true, "perfctr-core": false, - "mpx": false, + "mpx": true, "pbe": false, "avx512cd": false, "decodeassists": false, @@ -18427,7 +18396,7 @@ "mca": true, "xcrypt": false, "min-level": 13, - "xgetbv1": false, + "xgetbv1": true, "cid": false, "ds": false, "fxsr": true, @@ -18437,7 +18406,7 @@ "avx512-vpopcntdq": false, "phe": false, "extapic": false, - "3dnowprefetch": false, + "3dnowprefetch": true, "avx512vbmi2": false, "cr8legacy": false, "xcrypt-en": false, @@ -18449,17 +18418,17 @@ "cmp-legacy": false, "avx512-4fmaps": false, "vmcb-clean": false, - "hle": false, + "hle": true, "3dnowext": false, "npt": false, "clwb": false, "lbrv": false, - "adx": false, + "adx": true, "ss": true, "pni": true, "svm-lock": false, "smep": true, - "smap": false, + "smap": true, "pfthreshold": false, "x2apic": true, "avx512vbmi": false, @@ -18491,7 +18460,7 @@ "pge": true, "avx512bitalg": false, "pdcm": false, - "model": 63, + "model": 142, "movbe": true, "nrip-save": false, "ssse3": true, @@ -18502,7 +18471,7 @@ "fma": true, "cx16": true, "de": true, - "stepping": 2, + "stepping": 10, "xsave": true, "clflush": true, "skinit": false, @@ -18516,7 +18485,7 @@ "osvw": false, "apic": true, "pmm": false, - "spec-ctrl": false, + "spec-ctrl": true, "tsc-adjust": true, "kvm-steal-time": true, "kvmclock": true, @@ -18535,9 +18504,9 @@ "mmxext": false, "popcnt": true, "vaes": false, - "xsaves": false, + "xsaves": true, "lm": true, - "umip": false, + "umip": true, "pse": true, "avx2": true, "sep": true, @@ -18549,7 +18518,7 @@ "kvm-pv-unhalt": true, "tsc-scale": false, "topoext": false, - "clflushopt": false, + "clflushopt": true, "monitor": false, "avx512er": false, "pmm-en": false, @@ -18560,12 +18529,12 @@ "vpclmulqdq": false, "fxsr-opt": false, "xstore": false, - "rtm": false, - "kvm-hint-dedicated": true, + "rtm": true, + "kvm-hint-dedicated": false, "lmce": true, "perfctr-nb": false, "rdrand": true, - "rdseed": false, + "rdseed": true, "avx512-4vnniw": false, "vme": true, "vmx": false, @@ -18573,10 +18542,10 @@ "mtrr": true, "rdtscp": true, "pse36": true, - "kvm-pv-tlb-flush": false, + "kvm-pv-tlb-flush": true, "tbm": false, "wdt": false, - "model-id": "Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz", "sha-ni": false, "abm": true, "avx512pf": false, @@ -18602,12 +18571,12 @@ "arat": true, "gfni": false, "pause-filter": false, - "xsavec": false, + "xsavec": true, "intel-pt": false, "osxsave": false, "kvm-asyncpf": true, "perfctr-core": false, - "mpx": false, + "mpx": true, "pbe": false, "avx512cd": false, "decodeassists": false, @@ -18619,7 +18588,7 @@ "mca": true, "xcrypt": false, "min-level": 13, - "xgetbv1": false, + "xgetbv1": true, "cid": false, "ds": false, "fxsr": true, @@ -18629,7 +18598,7 @@ "avx512-vpopcntdq": false, "phe": false, "extapic": false, - "3dnowprefetch": false, + "3dnowprefetch": true, "avx512vbmi2": false, "cr8legacy": false, "xcrypt-en": false, @@ -18641,17 +18610,17 @@ "cmp-legacy": false, "avx512-4fmaps": false, "vmcb-clean": false, - "hle": false, + "hle": true, "3dnowext": false, "npt": false, "clwb": false, "lbrv": false, - "adx": false, + "adx": true, "ss": true, "pni": true, "svm-lock": false, "smep": true, - "smap": false, + "smap": true, "pfthreshold": false, "x2apic": true, "avx512vbmi": false, @@ -18683,7 +18652,7 @@ "pge": true, "avx512bitalg": false, "pdcm": false, - "model": 63, + "model": 142, "movbe": true, "nrip-save": false, "ssse3": true, @@ -18694,7 +18663,7 @@ "fma": true, "cx16": true, "de": true, - "stepping": 2, + "stepping": 10, "xsave": true, "clflush": true, "skinit": false, @@ -18708,7 +18677,7 @@ "osvw": false, "apic": true, "pmm": false, - "spec-ctrl": false, + "spec-ctrl": true, "tsc-adjust": true, "kvm-steal-time": true, "kvmclock": true, @@ -18727,9 +18696,9 @@ "mmxext": false, "popcnt": true, "vaes": false, - "xsaves": false, + "xsaves": true, "lm": true, - "umip": false, + "umip": true, "pse": true, "avx2": true, "sep": true, @@ -18741,7 +18710,7 @@ "kvm-pv-unhalt": true, "tsc-scale": false, "topoext": false, - "clflushopt": false, + "clflushopt": true, "monitor": false, "avx512er": false, "pmm-en": false, @@ -18752,12 +18721,12 @@ "vpclmulqdq": false, "fxsr-opt": false, "xstore": false, - "rtm": false, - "kvm-hint-dedicated": true, + "rtm": true, + "kvm-hint-dedicated": false, "lmce": true, "perfctr-nb": false, "rdrand": true, - "rdseed": false, + "rdseed": true, "avx512-4vnniw": false, "vme": true, "vmx": false, @@ -18765,10 +18734,10 @@ "mtrr": true, "rdtscp": true, "pse36": true, - "kvm-pv-tlb-flush": false, + "kvm-pv-tlb-flush": true, "tbm": false, "wdt": false, - "model-id": "Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz", "sha-ni": false, "abm": true, "avx512pf": false, @@ -18795,9 +18764,10 @@ "arat": true, "gfni": false, "pause-filter": false, - "xsavec": false, + "xsavec": true, "intel-pt": false, "osxsave": false, + "hv-frequencies": false, "tsc-frequency": 0, "xd": true, "hv-vendor-id": "", @@ -18805,7 +18775,7 @@ "kvm_asyncpf": true, "perfctr_core": false, "perfctr-core": false, - "mpx": false, + "mpx": true, "pbe": false, "decodeassists": false, "avx512cd": false, @@ -18822,7 +18792,7 @@ "xcrypt": false, "thread-id": -1, "min-level": 13, - "xgetbv1": false, + "xgetbv1": true, "cid": false, "hv-relaxed": false, "hv-crash": false, @@ -18834,7 +18804,7 @@ "avx512-vpopcntdq": false, "phe": false, "extapic": false, - "3dnowprefetch": false, + "3dnowprefetch": true, "avx512vbmi2": false, "cr8legacy": false, "cpuid-0xb": true, @@ -18853,19 +18823,19 @@ "vmcb_clean": false, "vmcb-clean": false, "3dnowext": false, - "hle": false, + "hle": true, "npt": false, "memory": "/machine/unattached/system[0]", "clwb": false, "lbrv": false, - "adx": false, + "adx": true, "ss": true, "pni": true, "svm_lock": false, "svm-lock": false, "pfthreshold": false, "smep": true, - "smap": false, + "smap": true, "x2apic": true, "avx512vbmi": false, "avx512vnni": false, @@ -18910,7 +18880,7 @@ "nodeid_msr": false, "pdcm": false, "movbe": true, - "model": 63, + "model": 142, "nrip_save": false, "nrip-save": false, "kvm_pv_unhalt": true, @@ -18923,7 +18893,7 @@ "cx16": true, "de": true, "enforce": false, - "stepping": 2, + "stepping": 10, "xsave": true, "clflush": true, "skinit": false, @@ -18942,7 +18912,7 @@ "pmu": false, "pmm": false, "apic": true, - "spec-ctrl": false, + "spec-ctrl": true, "min-xlevel2": 0, "tsc-adjust": true, "tsc_adjust": true, @@ -18966,10 +18936,10 @@ "mmxext": false, "vaes": false, "popcnt": true, - "xsaves": false, + "xsaves": true, "tcg-cpuid": true, "lm": true, - "umip": false, + "umip": true, "pse": true, "avx2": true, "sep": true, @@ -18988,7 +18958,7 @@ "topoext": false, "hv-vpindex": false, "xlevel2": 0, - "clflushopt": false, + "clflushopt": true, "kvm-no-smi-migration": false, "monitor": false, "avx512er": false, @@ -19003,15 +18973,15 @@ "hv-synic": false, "xstore": false, "fxsr_opt": false, - "kvm-hint-dedicated": true, - "rtm": false, + "kvm-hint-dedicated": false, + "rtm": true, "lmce": true, "hv-time": false, "perfctr-nb": false, "perfctr_nb": false, "ffxsr": false, "rdrand": true, - "rdseed": false, + "rdseed": true, "avx512-4vnniw": false, "vmx": false, "vme": true, @@ -19019,12 +18989,12 @@ "mtrr": true, "rdtscp": true, "pse36": true, - "kvm-pv-tlb-flush": false, + "kvm-pv-tlb-flush": true, "tbm": false, "wdt": false, "pause_filter": false, "sha-ni": false, - "model-id": "Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz", "abm": true, "avx512pf": false, "xstore-en": false @@ -19061,12 +19031,12 @@ "arat": true, "gfni": false, "pause-filter": false, - "xsavec": false, + "xsavec": true, "intel-pt": false, "osxsave": false, "kvm-asyncpf": true, "perfctr-core": false, - "mpx": false, + "mpx": true, "pbe": false, "avx512cd": false, "decodeassists": false, @@ -19078,7 +19048,7 @@ "mca": true, "xcrypt": false, "min-level": 13, - "xgetbv1": false, + "xgetbv1": true, "cid": false, "ds": false, "fxsr": true, @@ -19088,7 +19058,7 @@ "avx512-vpopcntdq": false, "phe": false, "extapic": false, - "3dnowprefetch": false, + "3dnowprefetch": true, "avx512vbmi2": false, "cr8legacy": false, "xcrypt-en": false, @@ -19100,17 +19070,17 @@ "cmp-legacy": false, "avx512-4fmaps": false, "vmcb-clean": false, - "hle": false, + "hle": true, "3dnowext": false, "npt": false, "clwb": false, "lbrv": false, - "adx": false, + "adx": true, "ss": true, "pni": true, "svm-lock": false, "smep": true, - "smap": false, + "smap": true, "pfthreshold": false, "x2apic": true, "avx512vbmi": false, @@ -19142,7 +19112,7 @@ "pge": true, "avx512bitalg": false, "pdcm": false, - "model": 63, + "model": 142, "movbe": true, "nrip-save": false, "ssse3": true, @@ -19153,7 +19123,7 @@ "fma": true, "cx16": true, "de": true, - "stepping": 2, + "stepping": 10, "xsave": true, "clflush": true, "skinit": false, @@ -19167,7 +19137,7 @@ "osvw": false, "apic": true, "pmm": false, - "spec-ctrl": false, + "spec-ctrl": true, "tsc-adjust": true, "kvm-steal-time": true, "kvmclock": true, @@ -19186,9 +19156,9 @@ "mmxext": false, "popcnt": true, "vaes": false, - "xsaves": false, + "xsaves": true, "lm": true, - "umip": false, + "umip": true, "pse": true, "avx2": true, "sep": true, @@ -19200,7 +19170,7 @@ "kvm-pv-unhalt": true, "tsc-scale": false, "topoext": false, - "clflushopt": false, + "clflushopt": true, "monitor": false, "avx512er": false, "pmm-en": false, @@ -19211,12 +19181,12 @@ "vpclmulqdq": false, "fxsr-opt": false, "xstore": false, - "rtm": false, - "kvm-hint-dedicated": true, + "rtm": true, + "kvm-hint-dedicated": false, "lmce": true, "perfctr-nb": false, "rdrand": true, - "rdseed": false, + "rdseed": true, "avx512-4vnniw": false, "vme": true, "vmx": false, @@ -19224,10 +19194,10 @@ "mtrr": true, "rdtscp": true, "pse36": true, - "kvm-pv-tlb-flush": false, + "kvm-pv-tlb-flush": true, "tbm": false, "wdt": false, - "model-id": "Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz", "sha-ni": false, "abm": true, "avx512pf": false, @@ -19253,12 +19223,12 @@ "arat": true, "gfni": false, "pause-filter": false, - "xsavec": false, + "xsavec": true, "intel-pt": false, "osxsave": false, "kvm-asyncpf": true, "perfctr-core": false, - "mpx": false, + "mpx": true, "pbe": false, "avx512cd": false, "decodeassists": false, @@ -19270,7 +19240,7 @@ "mca": true, "xcrypt": false, "min-level": 13, - "xgetbv1": false, + "xgetbv1": true, "cid": false, "ds": false, "fxsr": true, @@ -19280,7 +19250,7 @@ "avx512-vpopcntdq": false, "phe": false, "extapic": false, - "3dnowprefetch": false, + "3dnowprefetch": true, "avx512vbmi2": false, "cr8legacy": false, "xcrypt-en": false, @@ -19292,17 +19262,17 @@ "cmp-legacy": false, "avx512-4fmaps": false, "vmcb-clean": false, - "hle": false, + "hle": true, "3dnowext": false, "npt": false, "clwb": false, "lbrv": false, - "adx": false, + "adx": true, "ss": true, "pni": true, "svm-lock": false, "smep": true, - "smap": false, + "smap": true, "pfthreshold": false, "x2apic": true, "avx512vbmi": false, @@ -19334,7 +19304,7 @@ "pge": true, "avx512bitalg": false, "pdcm": false, - "model": 63, + "model": 142, "movbe": true, "nrip-save": false, "ssse3": true, @@ -19345,7 +19315,7 @@ "fma": true, "cx16": true, "de": true, - "stepping": 2, + "stepping": 10, "xsave": true, "clflush": true, "skinit": false, @@ -19359,7 +19329,7 @@ "osvw": false, "apic": true, "pmm": false, - "spec-ctrl": false, + "spec-ctrl": true, "tsc-adjust": true, "kvm-steal-time": true, "kvmclock": true, @@ -19378,9 +19348,9 @@ "mmxext": false, "popcnt": true, "vaes": false, - "xsaves": false, + "xsaves": true, "lm": true, - "umip": false, + "umip": true, "pse": true, "avx2": true, "sep": true, @@ -19392,7 +19362,7 @@ "kvm-pv-unhalt": true, "tsc-scale": false, "topoext": false, - "clflushopt": false, + "clflushopt": true, "monitor": false, "avx512er": false, "pmm-en": false, @@ -19403,12 +19373,12 @@ "vpclmulqdq": false, "fxsr-opt": false, "xstore": false, - "rtm": false, - "kvm-hint-dedicated": true, + "rtm": true, + "kvm-hint-dedicated": false, "lmce": true, "perfctr-nb": false, "rdrand": true, - "rdseed": false, + "rdseed": true, "avx512-4vnniw": false, "vme": true, "vmx": false, @@ -19416,10 +19386,10 @@ "mtrr": true, "rdtscp": true, "pse36": true, - "kvm-pv-tlb-flush": false, + "kvm-pv-tlb-flush": true, "tbm": false, "wdt": false, - "model-id": "Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz", "sha-ni": false, "abm": true, "avx512pf": false, @@ -19446,9 +19416,10 @@ "arat": true, "gfni": false, "pause-filter": false, - "xsavec": false, + "xsavec": true, "intel-pt": false, "osxsave": false, + "hv-frequencies": false, "tsc-frequency": 0, "xd": true, "hv-vendor-id": "", @@ -19456,7 +19427,7 @@ "kvm_asyncpf": true, "perfctr_core": false, "perfctr-core": false, - "mpx": false, + "mpx": true, "pbe": false, "decodeassists": false, "avx512cd": false, @@ -19473,7 +19444,7 @@ "xcrypt": false, "thread-id": -1, "min-level": 13, - "xgetbv1": false, + "xgetbv1": true, "cid": false, "hv-relaxed": false, "hv-crash": false, @@ -19485,7 +19456,7 @@ "avx512-vpopcntdq": false, "phe": false, "extapic": false, - "3dnowprefetch": false, + "3dnowprefetch": true, "avx512vbmi2": false, "cr8legacy": false, "cpuid-0xb": true, @@ -19504,19 +19475,19 @@ "vmcb_clean": false, "vmcb-clean": false, "3dnowext": false, - "hle": false, + "hle": true, "npt": false, "memory": "/machine/unattached/system[0]", "clwb": false, "lbrv": false, - "adx": false, + "adx": true, "ss": true, "pni": true, "svm_lock": false, "svm-lock": false, "pfthreshold": false, "smep": true, - "smap": false, + "smap": true, "x2apic": true, "avx512vbmi": false, "avx512vnni": false, @@ -19561,7 +19532,7 @@ "nodeid_msr": false, "pdcm": false, "movbe": true, - "model": 63, + "model": 142, "nrip_save": false, "nrip-save": false, "kvm_pv_unhalt": true, @@ -19574,7 +19545,7 @@ "cx16": true, "de": true, "enforce": false, - "stepping": 2, + "stepping": 10, "xsave": true, "clflush": true, "skinit": false, @@ -19593,7 +19564,7 @@ "pmu": false, "pmm": false, "apic": true, - "spec-ctrl": false, + "spec-ctrl": true, "min-xlevel2": 0, "tsc-adjust": true, "tsc_adjust": true, @@ -19617,10 +19588,10 @@ "mmxext": false, "vaes": false, "popcnt": true, - "xsaves": false, + "xsaves": true, "tcg-cpuid": true, "lm": true, - "umip": false, + "umip": true, "pse": true, "avx2": true, "sep": true, @@ -19639,7 +19610,7 @@ "topoext": false, "hv-vpindex": false, "xlevel2": 0, - "clflushopt": false, + "clflushopt": true, "kvm-no-smi-migration": false, "monitor": false, "avx512er": false, @@ -19654,15 +19625,15 @@ "hv-synic": false, "xstore": false, "fxsr_opt": false, - "kvm-hint-dedicated": true, - "rtm": false, + "kvm-hint-dedicated": false, + "rtm": true, "lmce": true, "hv-time": false, "perfctr-nb": false, "perfctr_nb": false, "ffxsr": false, "rdrand": true, - "rdseed": false, + "rdseed": true, "avx512-4vnniw": false, "vmx": false, "vme": true, @@ -19670,12 +19641,12 @@ "mtrr": true, "rdtscp": true, "pse36": true, - "kvm-pv-tlb-flush": false, + "kvm-pv-tlb-flush": true, "tbm": false, "wdt": false, "pause_filter": false, "sha-ni": false, - "model-id": "Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz", "abm": true, "avx512pf": false, "xstore-en": false @@ -20716,6 +20687,7 @@ "xsavec": false, "intel-pt": false, "osxsave": false, + "hv-frequencies": false, "tsc-frequency": 0, "xd": true, "hv-vendor-id": "", @@ -21367,6 +21339,7 @@ "xsavec": false, "intel-pt": false, "osxsave": false, + "hv-frequencies": false, "tsc-frequency": 0, "xd": true, "hv-vendor-id": "", diff --git a/tests/qemucapabilitiesdata/caps_2.12.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_2.12.0.x86_64.xml index b35206efea..6e94be82c4 100644 --- a/tests/qemucapabilitiesdata/caps_2.12.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_2.12.0.x86_64.xml @@ -113,6 +113,7 @@ <flag name='gic-version'/> <flag name='incoming-defer'/> <flag name='virtio-gpu'/> + <flag name='virtio-gpu.virgl'/> <flag name='virtio-keyboard'/> <flag name='virtio-mouse'/> <flag name='virtio-tablet'/> @@ -123,6 +124,7 @@ <flag name='vserport-change-event'/> <flag name='virtio-balloon-pci.deflate-on-oom'/> <flag name='mptsas1068'/> + <flag name='spice-gl'/> <flag name='qxl.vram64_size_mb'/> <flag name='chardev-logfile'/> <flag name='debug-threads'/> @@ -152,6 +154,7 @@ <flag name='drive-iotune-group'/> <flag name='query-cpu-model-expansion'/> <flag name='virtio-net.host_mtu'/> + <flag name='spice-rendernode'/> <flag name='nvdimm'/> <flag name='pcie-root-port'/> <flag name='query-cpu-definitions'/> @@ -207,10 +210,11 @@ <flag name='memory-backend-memfd.hugetlb'/> <flag name='iothread.poll-max-ns'/> <flag name='memory-backend-file.align'/> - <version>2011090</version> + <flag name='nvdimm.unarmed'/> + <version>2012000</version> <kvmVersion>0</kvmVersion> - <microcodeVersion>414601</microcodeVersion> - <package>v2.12.0-rc0</package> + <microcodeVersion>414020</microcodeVersion> + <package>v2.12.0</package> <arch>x86_64</arch> <hostCPU type='kvm' model='base' migratability='yes'> <property name='phys-bits' type='number' value='0'/> @@ -224,9 +228,10 @@ <property name='arat' type='boolean' value='true' migratable='yes'/> <property name='gfni' type='boolean' value='false'/> <property name='pause-filter' type='boolean' value='false'/> - <property name='xsavec' type='boolean' value='false'/> + <property name='xsavec' type='boolean' value='true' migratable='yes'/> <property name='intel-pt' type='boolean' value='false'/> <property name='osxsave' type='boolean' value='false'/> + <property name='hv-frequencies' type='boolean' value='false'/> <property name='tsc-frequency' type='number' value='0'/> <property name='xd' type='boolean' value='true' migratable='yes'/> <property name='hv-vendor-id' type='string' value=''/> @@ -234,7 +239,7 @@ <property name='kvm_asyncpf' type='boolean' value='true' migratable='yes'/> <property name='perfctr_core' type='boolean' value='false'/> <property name='perfctr-core' type='boolean' value='false'/> - <property name='mpx' type='boolean' value='false'/> + <property name='mpx' type='boolean' value='true' migratable='yes'/> <property name='pbe' type='boolean' value='false'/> <property name='decodeassists' type='boolean' value='false'/> <property name='avx512cd' type='boolean' value='false'/> @@ -251,7 +256,7 @@ <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='false'/> + <property name='xgetbv1' type='boolean' value='true' migratable='yes'/> <property name='cid' type='boolean' value='false'/> <property name='hv-relaxed' type='boolean' value='false'/> <property name='hv-crash' type='boolean' value='false'/> @@ -263,7 +268,7 @@ <property name='avx512-vpopcntdq' type='boolean' value='false'/> <property name='phe' type='boolean' value='false'/> <property name='extapic' type='boolean' value='false'/> - <property name='3dnowprefetch' type='boolean' value='false'/> + <property name='3dnowprefetch' type='boolean' value='true' migratable='yes'/> <property name='avx512vbmi2' type='boolean' value='false'/> <property name='cr8legacy' type='boolean' value='false'/> <property name='cpuid-0xb' type='boolean' value='true' migratable='yes'/> @@ -282,19 +287,19 @@ <property name='vmcb_clean' type='boolean' value='false'/> <property name='vmcb-clean' type='boolean' value='false'/> <property name='3dnowext' type='boolean' value='false'/> - <property name='hle' type='boolean' value='false'/> + <property name='hle' type='boolean' value='true' migratable='yes'/> <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='false'/> + <property name='adx' type='boolean' value='true' migratable='yes'/> <property name='ss' type='boolean' value='true' migratable='yes'/> <property name='pni' type='boolean' value='true' migratable='yes'/> <property name='svm_lock' type='boolean' value='false'/> <property name='svm-lock' type='boolean' value='false'/> <property name='pfthreshold' type='boolean' value='false'/> <property name='smep' type='boolean' value='true' migratable='yes'/> - <property name='smap' type='boolean' value='false'/> + <property name='smap' type='boolean' value='true' migratable='yes'/> <property name='x2apic' type='boolean' value='true' migratable='yes'/> <property name='avx512vbmi' type='boolean' value='false'/> <property name='avx512vnni' type='boolean' value='false'/> @@ -339,7 +344,7 @@ <property name='nodeid_msr' type='boolean' value='false'/> <property name='pdcm' type='boolean' value='false'/> <property name='movbe' type='boolean' value='true' migratable='yes'/> - <property name='model' type='number' value='63'/> + <property name='model' type='number' value='142'/> <property name='nrip_save' type='boolean' value='false'/> <property name='nrip-save' type='boolean' value='false'/> <property name='kvm_pv_unhalt' type='boolean' value='true' migratable='yes'/> @@ -352,7 +357,7 @@ <property name='cx16' type='boolean' value='true' migratable='yes'/> <property name='de' type='boolean' value='true' migratable='yes'/> <property name='enforce' type='boolean' value='false'/> - <property name='stepping' type='number' value='2'/> + <property name='stepping' type='number' value='10'/> <property name='xsave' type='boolean' value='true' migratable='yes'/> <property name='clflush' type='boolean' value='true' migratable='yes'/> <property name='skinit' type='boolean' value='false'/> @@ -371,7 +376,7 @@ <property name='pmu' type='boolean' value='false'/> <property name='pmm' type='boolean' value='false'/> <property name='apic' type='boolean' value='true' migratable='yes'/> - <property name='spec-ctrl' type='boolean' value='false'/> + <property name='spec-ctrl' type='boolean' value='true' migratable='yes'/> <property name='min-xlevel2' type='number' value='0'/> <property name='tsc-adjust' type='boolean' value='true' migratable='yes'/> <property name='tsc_adjust' type='boolean' value='true' migratable='yes'/> @@ -395,10 +400,10 @@ <property name='mmxext' type='boolean' value='false'/> <property name='vaes' type='boolean' value='false'/> <property name='popcnt' type='boolean' value='true' migratable='yes'/> - <property name='xsaves' type='boolean' value='false'/> + <property name='xsaves' type='boolean' value='true' migratable='yes'/> <property name='tcg-cpuid' type='boolean' value='true' migratable='yes'/> <property name='lm' type='boolean' value='true' migratable='yes'/> - <property name='umip' type='boolean' value='false'/> + <property name='umip' type='boolean' value='true' migratable='yes'/> <property name='pse' type='boolean' value='true' migratable='yes'/> <property name='avx2' type='boolean' value='true' migratable='yes'/> <property name='sep' type='boolean' value='true' migratable='yes'/> @@ -417,7 +422,7 @@ <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='false'/> + <property name='clflushopt' type='boolean' value='true' migratable='yes'/> <property name='kvm-no-smi-migration' type='boolean' value='false'/> <property name='monitor' type='boolean' value='false'/> <property name='avx512er' type='boolean' value='false'/> @@ -432,15 +437,15 @@ <property name='hv-synic' type='boolean' value='false'/> <property name='xstore' type='boolean' value='false'/> <property name='fxsr_opt' type='boolean' value='false'/> - <property name='kvm-hint-dedicated' type='boolean' value='true' migratable='yes'/> - <property name='rtm' type='boolean' value='false'/> + <property name='kvm-hint-dedicated' type='boolean' value='false'/> + <property name='rtm' type='boolean' value='true' migratable='yes'/> <property name='lmce' type='boolean' value='true' migratable='yes'/> <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' migratable='yes'/> - <property name='rdseed' type='boolean' value='false'/> + <property name='rdseed' type='boolean' value='true' migratable='yes'/> <property name='avx512-4vnniw' type='boolean' value='false'/> <property name='vmx' type='boolean' value='false'/> <property name='vme' type='boolean' value='true' migratable='yes'/> @@ -448,12 +453,12 @@ <property name='mtrr' type='boolean' value='true' migratable='yes'/> <property name='rdtscp' type='boolean' value='true' migratable='yes'/> <property name='pse36' type='boolean' value='true' migratable='yes'/> - <property name='kvm-pv-tlb-flush' type='boolean' value='false'/> + <property name='kvm-pv-tlb-flush' type='boolean' value='true' migratable='yes'/> <property name='tbm' type='boolean' value='false'/> <property name='wdt' type='boolean' value='false'/> <property name='pause_filter' type='boolean' value='false'/> <property name='sha-ni' type='boolean' value='false'/> - <property name='model-id' type='string' value='Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz'/> + <property name='model-id' type='string' value='Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz'/> <property name='abm' type='boolean' value='true' migratable='yes'/> <property name='avx512pf' type='boolean' value='false'/> <property name='xstore-en' type='boolean' value='false'/> @@ -473,6 +478,7 @@ <property name='xsavec' type='boolean' value='false'/> <property name='intel-pt' type='boolean' value='false'/> <property name='osxsave' type='boolean' value='false'/> + <property name='hv-frequencies' type='boolean' value='false'/> <property name='tsc-frequency' type='number' value='0'/> <property name='xd' type='boolean' value='true' migratable='yes'/> <property name='hv-vendor-id' type='string' value=''/> @@ -731,91 +737,37 @@ <blocker name='3dnow'/> </cpu> <cpu type='kvm' name='Westmere' usable='yes'/> - <cpu type='kvm' name='Westmere-IBRS' usable='no'> - <blocker name='spec-ctrl'/> - </cpu> + <cpu type='kvm' name='Westmere-IBRS' usable='yes'/> <cpu type='kvm' name='Skylake-Server' usable='no'> - <blocker name='hle'/> - <blocker name='rtm'/> - <blocker name='mpx'/> <blocker name='avx512f'/> <blocker name='avx512dq'/> - <blocker name='rdseed'/> - <blocker name='adx'/> - <blocker name='smap'/> - <blocker name='clflushopt'/> <blocker name='clwb'/> <blocker name='avx512cd'/> <blocker name='avx512bw'/> <blocker name='avx512vl'/> - <blocker name='3dnowprefetch'/> - <blocker name='xsavec'/> - <blocker name='xgetbv1'/> - <blocker name='mpx'/> - <blocker name='mpx'/> <blocker name='avx512f'/> <blocker name='avx512f'/> <blocker name='avx512f'/> </cpu> <cpu type='kvm' name='Skylake-Server-IBRS' usable='no'> - <blocker name='hle'/> - <blocker name='rtm'/> - <blocker name='mpx'/> <blocker name='avx512f'/> <blocker name='avx512dq'/> - <blocker name='rdseed'/> - <blocker name='adx'/> - <blocker name='smap'/> <blocker name='clwb'/> <blocker name='avx512cd'/> <blocker name='avx512bw'/> <blocker name='avx512vl'/> - <blocker name='spec-ctrl'/> - <blocker name='3dnowprefetch'/> - <blocker name='xsavec'/> - <blocker name='xgetbv1'/> - <blocker name='mpx'/> - <blocker name='mpx'/> <blocker name='avx512f'/> <blocker name='avx512f'/> <blocker name='avx512f'/> </cpu> - <cpu type='kvm' name='Skylake-Client' usable='no'> - <blocker name='hle'/> - <blocker name='rtm'/> - <blocker name='mpx'/> - <blocker name='rdseed'/> - <blocker name='adx'/> - <blocker name='smap'/> - <blocker name='3dnowprefetch'/> - <blocker name='xsavec'/> - <blocker name='xgetbv1'/> - <blocker name='mpx'/> - <blocker name='mpx'/> - </cpu> - <cpu type='kvm' name='Skylake-Client-IBRS' usable='no'> - <blocker name='hle'/> - <blocker name='rtm'/> - <blocker name='mpx'/> - <blocker name='rdseed'/> - <blocker name='adx'/> - <blocker name='smap'/> - <blocker name='spec-ctrl'/> - <blocker name='3dnowprefetch'/> - <blocker name='xsavec'/> - <blocker name='xgetbv1'/> - <blocker name='mpx'/> - <blocker name='mpx'/> - </cpu> + <cpu type='kvm' name='Skylake-Client' usable='yes'/> + <cpu type='kvm' name='Skylake-Client-IBRS' usable='yes'/> <cpu type='kvm' name='SandyBridge' usable='yes'/> - <cpu type='kvm' name='SandyBridge-IBRS' usable='no'> - <blocker name='spec-ctrl'/> - </cpu> + <cpu type='kvm' name='SandyBridge-IBRS' usable='yes'/> <cpu type='kvm' name='Penryn' usable='yes'/> <cpu type='kvm' name='Opteron_G5' usable='no'> <blocker name='sse4a'/> <blocker name='misalignsse'/> - <blocker name='3dnowprefetch'/> <blocker name='xop'/> <blocker name='fma4'/> <blocker name='tbm'/> @@ -823,7 +775,6 @@ <cpu type='kvm' name='Opteron_G4' usable='no'> <blocker name='sse4a'/> <blocker name='misalignsse'/> - <blocker name='3dnowprefetch'/> <blocker name='xop'/> <blocker name='fma4'/> </cpu> @@ -834,90 +785,37 @@ <cpu type='kvm' name='Opteron_G2' usable='yes'/> <cpu type='kvm' name='Opteron_G1' usable='yes'/> <cpu type='kvm' name='Nehalem' usable='yes'/> - <cpu type='kvm' name='Nehalem-IBRS' usable='no'> - <blocker name='spec-ctrl'/> - </cpu> + <cpu type='kvm' name='Nehalem-IBRS' usable='yes'/> <cpu type='kvm' name='IvyBridge' usable='yes'/> - <cpu type='kvm' name='IvyBridge-IBRS' usable='no'> - <blocker name='spec-ctrl'/> - </cpu> - <cpu type='kvm' name='Haswell' usable='no'> - <blocker name='hle'/> - <blocker name='rtm'/> - </cpu> + <cpu type='kvm' name='IvyBridge-IBRS' usable='yes'/> + <cpu type='kvm' name='Haswell' usable='yes'/> <cpu type='kvm' name='Haswell-noTSX' usable='yes'/> - <cpu type='kvm' name='Haswell-noTSX-IBRS' usable='no'> - <blocker name='spec-ctrl'/> - </cpu> - <cpu type='kvm' name='Haswell-IBRS' usable='no'> - <blocker name='hle'/> - <blocker name='rtm'/> - <blocker name='spec-ctrl'/> - </cpu> + <cpu type='kvm' name='Haswell-noTSX-IBRS' usable='yes'/> + <cpu type='kvm' name='Haswell-IBRS' usable='yes'/> <cpu type='kvm' name='EPYC' usable='no'> - <blocker name='rdseed'/> - <blocker name='adx'/> - <blocker name='smap'/> - <blocker name='clflushopt'/> <blocker name='sha-ni'/> <blocker name='mmxext'/> <blocker name='fxsr-opt'/> <blocker name='cr8legacy'/> <blocker name='sse4a'/> <blocker name='misalignsse'/> - <blocker name='3dnowprefetch'/> <blocker name='osvw'/> - <blocker name='xsavec'/> - <blocker name='xgetbv1'/> </cpu> <cpu type='kvm' name='EPYC-IBPB' usable='no'> - <blocker name='rdseed'/> - <blocker name='adx'/> - <blocker name='smap'/> - <blocker name='clflushopt'/> <blocker name='sha-ni'/> <blocker name='mmxext'/> <blocker name='fxsr-opt'/> <blocker name='cr8legacy'/> <blocker name='sse4a'/> <blocker name='misalignsse'/> - <blocker name='3dnowprefetch'/> <blocker name='osvw'/> <blocker name='ibpb'/> - <blocker name='xsavec'/> - <blocker name='xgetbv1'/> </cpu> <cpu type='kvm' name='Conroe' usable='yes'/> - <cpu type='kvm' name='Broadwell' usable='no'> - <blocker name='hle'/> - <blocker name='rtm'/> - <blocker name='rdseed'/> - <blocker name='adx'/> - <blocker name='smap'/> - <blocker name='3dnowprefetch'/> - </cpu> - <cpu type='kvm' name='Broadwell-noTSX' usable='no'> - <blocker name='rdseed'/> - <blocker name='adx'/> - <blocker name='smap'/> - <blocker name='3dnowprefetch'/> - </cpu> - <cpu type='kvm' name='Broadwell-noTSX-IBRS' usable='no'> - <blocker name='rdseed'/> - <blocker name='adx'/> - <blocker name='smap'/> - <blocker name='spec-ctrl'/> - <blocker name='3dnowprefetch'/> - </cpu> - <cpu type='kvm' name='Broadwell-IBRS' usable='no'> - <blocker name='hle'/> - <blocker name='rtm'/> - <blocker name='rdseed'/> - <blocker name='adx'/> - <blocker name='smap'/> - <blocker name='spec-ctrl'/> - <blocker name='3dnowprefetch'/> - </cpu> + <cpu type='kvm' name='Broadwell' usable='yes'/> + <cpu type='kvm' name='Broadwell-noTSX' usable='yes'/> + <cpu type='kvm' name='Broadwell-noTSX-IBRS' usable='yes'/> + <cpu type='kvm' name='Broadwell-IBRS' usable='yes'/> <cpu type='kvm' name='486' usable='yes'/> <cpu type='tcg' name='max' usable='yes'/> <cpu type='tcg' name='host' usable='no'> -- 2.20.1

Regenerate the output from the QEMU v3.0.0 tag using ./configure --target-list=x86_64-softmmu \ --disable-strip \ --disable-fdt \ --disable-xen \ --disable-werror \ --enable-debug \ --enable-system \ --enable-user \ --enable-linux-user \ --with-pkgversion=v3.0.0 NB: I had to fudge in the qemu-sev-capabilities output from commit d4005609f3 (not sure if there's a specific package to allow it just from build). Signed-off-by: John Ferlan <jferlan@redhat.com> --- .../caps_3.0.0.x86_64.replies | 73 ++++++++++--------- .../caps_3.0.0.x86_64.xml | 19 +++-- 2 files changed, 50 insertions(+), 42 deletions(-) diff --git a/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.replies b/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.replies index 16f021c879..bf0e6fb9c0 100644 --- a/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.replies +++ b/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.replies @@ -4909,7 +4909,6 @@ "id": "libvirt-35" } - { "execute": "qom-list-properties", "arguments": { @@ -19083,7 +19082,7 @@ "svm": false, "invtsc": false, "sse2": true, - "ssbd": false, + "ssbd": true, "est": false, "avx512ifma": false, "tm2": false, @@ -19095,7 +19094,7 @@ "pge": true, "avx512bitalg": false, "pdcm": false, - "model": 94, + "model": 142, "movbe": true, "nrip-save": false, "ssse3": true, @@ -19106,7 +19105,7 @@ "fma": true, "cx16": true, "de": true, - "stepping": 3, + "stepping": 10, "xsave": true, "clflush": true, "skinit": false, @@ -19173,7 +19172,7 @@ "rdseed": true, "avx512-4vnniw": false, "vme": true, - "vmx": true, + "vmx": false, "dtes64": false, "mtrr": true, "rdtscp": true, @@ -19181,7 +19180,7 @@ "kvm-pv-tlb-flush": true, "tbm": false, "wdt": false, - "model-id": "Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz", "sha-ni": false, "abm": true, "avx512pf": false, @@ -19278,7 +19277,7 @@ "svm": false, "invtsc": false, "sse2": true, - "ssbd": false, + "ssbd": true, "est": false, "avx512ifma": false, "tm2": false, @@ -19290,7 +19289,7 @@ "pge": true, "avx512bitalg": false, "pdcm": false, - "model": 94, + "model": 142, "movbe": true, "nrip-save": false, "ssse3": true, @@ -19301,7 +19300,7 @@ "fma": true, "cx16": true, "de": true, - "stepping": 3, + "stepping": 10, "xsave": true, "clflush": true, "skinit": false, @@ -19368,7 +19367,7 @@ "rdseed": true, "avx512-4vnniw": false, "vme": true, - "vmx": true, + "vmx": false, "dtes64": false, "mtrr": true, "rdtscp": true, @@ -19376,7 +19375,7 @@ "kvm-pv-tlb-flush": true, "tbm": false, "wdt": false, - "model-id": "Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz", "sha-ni": false, "abm": true, "avx512pf": false, @@ -19505,7 +19504,7 @@ "invtsc": false, "sse3": true, "sse2": true, - "ssbd": false, + "ssbd": true, "est": false, "avx512ifma": false, "tm2": false, @@ -19524,7 +19523,7 @@ "nodeid_msr": false, "pdcm": false, "movbe": true, - "model": 94, + "model": 142, "nrip_save": false, "nrip-save": false, "kvm_pv_unhalt": true, @@ -19537,7 +19536,7 @@ "cx16": true, "de": true, "enforce": false, - "stepping": 3, + "stepping": 10, "xsave": true, "clflush": true, "skinit": false, @@ -19629,7 +19628,7 @@ "rdrand": true, "rdseed": true, "avx512-4vnniw": false, - "vmx": true, + "vmx": false, "vme": true, "dtes64": false, "mtrr": true, @@ -19640,7 +19639,7 @@ "wdt": false, "pause_filter": false, "sha-ni": false, - "model-id": "Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz", "abm": true, "avx512pf": false, "xstore-en": false @@ -19748,7 +19747,7 @@ "svm": false, "invtsc": true, "sse2": true, - "ssbd": false, + "ssbd": true, "est": false, "avx512ifma": false, "tm2": false, @@ -19760,7 +19759,7 @@ "pge": true, "avx512bitalg": false, "pdcm": false, - "model": 94, + "model": 142, "movbe": true, "nrip-save": false, "ssse3": true, @@ -19771,7 +19770,7 @@ "fma": true, "cx16": true, "de": true, - "stepping": 3, + "stepping": 10, "xsave": true, "clflush": true, "skinit": false, @@ -19838,7 +19837,7 @@ "rdseed": true, "avx512-4vnniw": false, "vme": true, - "vmx": true, + "vmx": false, "dtes64": false, "mtrr": true, "rdtscp": true, @@ -19846,7 +19845,7 @@ "kvm-pv-tlb-flush": true, "tbm": false, "wdt": false, - "model-id": "Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz", "sha-ni": false, "abm": true, "avx512pf": false, @@ -19943,7 +19942,7 @@ "svm": false, "invtsc": true, "sse2": true, - "ssbd": false, + "ssbd": true, "est": false, "avx512ifma": false, "tm2": false, @@ -19955,7 +19954,7 @@ "pge": true, "avx512bitalg": false, "pdcm": false, - "model": 94, + "model": 142, "movbe": true, "nrip-save": false, "ssse3": true, @@ -19966,7 +19965,7 @@ "fma": true, "cx16": true, "de": true, - "stepping": 3, + "stepping": 10, "xsave": true, "clflush": true, "skinit": false, @@ -20033,7 +20032,7 @@ "rdseed": true, "avx512-4vnniw": false, "vme": true, - "vmx": true, + "vmx": false, "dtes64": false, "mtrr": true, "rdtscp": true, @@ -20041,7 +20040,7 @@ "kvm-pv-tlb-flush": true, "tbm": false, "wdt": false, - "model-id": "Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz", "sha-ni": false, "abm": true, "avx512pf": false, @@ -20170,7 +20169,7 @@ "invtsc": true, "sse3": true, "sse2": true, - "ssbd": false, + "ssbd": true, "est": false, "avx512ifma": false, "tm2": false, @@ -20189,7 +20188,7 @@ "nodeid_msr": false, "pdcm": false, "movbe": true, - "model": 94, + "model": 142, "nrip_save": false, "nrip-save": false, "kvm_pv_unhalt": true, @@ -20202,7 +20201,7 @@ "cx16": true, "de": true, "enforce": false, - "stepping": 3, + "stepping": 10, "xsave": true, "clflush": true, "skinit": false, @@ -20294,7 +20293,7 @@ "rdrand": true, "rdseed": true, "avx512-4vnniw": false, - "vmx": true, + "vmx": false, "vme": true, "dtes64": false, "mtrr": true, @@ -20305,7 +20304,7 @@ "wdt": false, "pause_filter": false, "sha-ni": false, - "model-id": "Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz", "abm": true, "avx512pf": false, "xstore-en": false @@ -20321,11 +20320,13 @@ } { - "id": "libvirt-50", - "error": { - "class": "GenericError", - "desc": "SEV feature is not available" - } + "return": { + "reduced-phys-bits": 1, + "cbitpos": 47, + "cert-chain": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA", + "pdh": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA" + }, + "id": "libvirt-50" } { diff --git a/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.xml index 77d1f2770d..08025d8cac 100644 --- a/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_3.0.0.x86_64.xml @@ -202,6 +202,7 @@ <flag name='tpm-emulator'/> <flag name='mch'/> <flag name='mch.extended-tseg-mbytes'/> + <flag name='sev-guest'/> <flag name='usb-storage.werror'/> <flag name='egl-headless'/> <flag name='vfio-pci.display'/> @@ -212,7 +213,7 @@ <flag name='nvdimm.unarmed'/> <version>3000000</version> <kvmVersion>0</kvmVersion> - <microcodeVersion>426554</microcodeVersion> + <microcodeVersion>426699</microcodeVersion> <package>v3.0.0</package> <arch>x86_64</arch> <hostCPU type='kvm' model='base' migratability='yes'> @@ -329,7 +330,7 @@ <property name='invtsc' type='boolean' value='true' migratable='no'/> <property name='sse3' type='boolean' value='true' migratable='yes'/> <property name='sse2' type='boolean' value='true' migratable='yes'/> - <property name='ssbd' type='boolean' value='false'/> + <property name='ssbd' type='boolean' value='true' migratable='yes'/> <property name='est' type='boolean' value='false'/> <property name='avx512ifma' type='boolean' value='false'/> <property name='tm2' type='boolean' value='false'/> @@ -348,7 +349,7 @@ <property name='nodeid_msr' type='boolean' value='false'/> <property name='pdcm' type='boolean' value='false'/> <property name='movbe' type='boolean' value='true' migratable='yes'/> - <property name='model' type='number' value='94'/> + <property name='model' type='number' value='142'/> <property name='nrip_save' type='boolean' value='false'/> <property name='nrip-save' type='boolean' value='false'/> <property name='kvm_pv_unhalt' type='boolean' value='true' migratable='yes'/> @@ -361,7 +362,7 @@ <property name='cx16' type='boolean' value='true' migratable='yes'/> <property name='de' type='boolean' value='true' migratable='yes'/> <property name='enforce' type='boolean' value='false'/> - <property name='stepping' type='number' value='3'/> + <property name='stepping' type='number' value='10'/> <property name='xsave' type='boolean' value='true' migratable='yes'/> <property name='clflush' type='boolean' value='true' migratable='yes'/> <property name='skinit' type='boolean' value='false'/> @@ -453,7 +454,7 @@ <property name='rdrand' type='boolean' value='true' migratable='yes'/> <property name='rdseed' type='boolean' value='true' migratable='yes'/> <property name='avx512-4vnniw' type='boolean' value='false'/> - <property name='vmx' type='boolean' value='true' migratable='yes'/> + <property name='vmx' type='boolean' value='false'/> <property name='vme' type='boolean' value='true' migratable='yes'/> <property name='dtes64' type='boolean' value='false'/> <property name='mtrr' type='boolean' value='true' migratable='yes'/> @@ -464,7 +465,7 @@ <property name='wdt' type='boolean' value='false'/> <property name='pause_filter' type='boolean' value='false'/> <property name='sha-ni' type='boolean' value='false'/> - <property name='model-id' type='string' value='Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz'/> + <property name='model-id' type='string' value='Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz'/> <property name='abm' type='boolean' value='true' migratable='yes'/> <property name='avx512pf' type='boolean' value='false'/> <property name='xstore-en' type='boolean' value='false'/> @@ -1192,4 +1193,10 @@ <machine name='pc-0.11' hotplugCpus='yes' maxCpus='255'/> <machine name='pc-0.12' hotplugCpus='yes' maxCpus='255'/> <machine name='pc-0.10' hotplugCpus='yes' maxCpus='255'/> + <sev> + <cbitpos>47</cbitpos> + <reducedPhysBits>1</reducedPhysBits> + <pdh>AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA</pdh> + <certChain>AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA</certChain> + </sev> </qemuCaps> -- 2.20.1

On Tue, 2019-01-22 at 12:46 -0500, John Ferlan wrote:
Regenerate the output from the QEMU v3.0.0 tag using
./configure --target-list=x86_64-softmmu \ --disable-strip \ --disable-fdt \ --disable-xen \ --disable-werror \ --enable-debug \ --enable-system \ --enable-user \ --enable-linux-user \ --with-pkgversion=v3.0.0
NB: I had to fudge in the qemu-sev-capabilities output from commit d4005609f3 (not sure if there's a specific package to allow it just from build).
While I very much appreciate the effort and agree it's something that we should do, you can't just mix and match replies like that, otherwise you'll end up with nonsensical results such as... [...]
@@ -19181,7 +19180,7 @@ "kvm-pv-tlb-flush": true, "tbm": false, "wdt": false, - "model-id": "Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz",
... an Intel CPU... [...]
@@ -20321,11 +20320,13 @@ }
{ - "id": "libvirt-50", - "error": { - "class": "GenericError", - "desc": "SEV feature is not available" - } + "return": { + "reduced-phys-bits": 1, + "cbitpos": 47, + "cert-chain": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA", + "pdh": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA" + }, + "id": "libvirt-50" }
... suddenly supporting SEV, which is an AMD-specific feature. The only sane way to deal with the situation is picking a few QEMU versions and generate the corresponding capabilities on an SEV-capable AMD host; then it's only a matter of making sure SEV testing is performed against those specific QEMU versions rather than random ones. -- Andrea Bolognani / Red Hat / Virtualization

On Wed, Jan 23, 2019 at 10:08:31AM +0100, Andrea Bolognani wrote:
On Tue, 2019-01-22 at 12:46 -0500, John Ferlan wrote:
Regenerate the output from the QEMU v3.0.0 tag using
./configure --target-list=x86_64-softmmu \ --disable-strip \ --disable-fdt \ --disable-xen \ --disable-werror \ --enable-debug \ --enable-system \ --enable-user \ --enable-linux-user \ --with-pkgversion=v3.0.0
NB: I had to fudge in the qemu-sev-capabilities output from commit d4005609f3 (not sure if there's a specific package to allow it just from build).
While I very much appreciate the effort and agree it's something that we should do, you can't just mix and match replies like that, otherwise you'll end up with nonsensical results such as...
In addition do we really need to change the CPU part of replies every time someone wants to update capabilities? It creates unnecessary noise and in some cases it might remove some advanced features because the capabilities were generated on Server CPU. That's the case of the first patch in this series, you basically downgrade the CPU used to generate replies. I know, it requires more effort when preparing patches. Pavel
[...]
@@ -19181,7 +19180,7 @@ "kvm-pv-tlb-flush": true, "tbm": false, "wdt": false, - "model-id": "Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz",
... an Intel CPU...
[...]
@@ -20321,11 +20320,13 @@ }
{ - "id": "libvirt-50", - "error": { - "class": "GenericError", - "desc": "SEV feature is not available" - } + "return": { + "reduced-phys-bits": 1, + "cbitpos": 47, + "cert-chain": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA", + "pdh": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA" + }, + "id": "libvirt-50" }
... suddenly supporting SEV, which is an AMD-specific feature.
The only sane way to deal with the situation is picking a few QEMU versions and generate the corresponding capabilities on an SEV-capable AMD host; then it's only a matter of making sure SEV testing is performed against those specific QEMU versions rather than random ones.
-- Andrea Bolognani / Red Hat / Virtualization
-- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list

On Wed, Jan 23, 2019 at 12:42:58PM +0100, Pavel Hrdina wrote:
On Wed, Jan 23, 2019 at 10:08:31AM +0100, Andrea Bolognani wrote:
On Tue, 2019-01-22 at 12:46 -0500, John Ferlan wrote:
Regenerate the output from the QEMU v3.0.0 tag using
./configure --target-list=x86_64-softmmu \ --disable-strip \ --disable-fdt \ --disable-xen \ --disable-werror \ --enable-debug \ --enable-system \ --enable-user \ --enable-linux-user \ --with-pkgversion=v3.0.0
NB: I had to fudge in the qemu-sev-capabilities output from commit d4005609f3 (not sure if there's a specific package to allow it just from build).
While I very much appreciate the effort and agree it's something that we should do, you can't just mix and match replies like that, otherwise you'll end up with nonsensical results such as...
In addition do we really need to change the CPU part of replies every time someone wants to update capabilities? It creates unnecessary noise and in some cases it might remove some advanced features because the capabilities were generated on Server CPU.
That's the case of the first patch in this series, you basically downgrade the CPU used to generate replies. I know, it requires more effort when preparing patches.
Would it be possible to have an on-demand job in our upstream CI that would regenerate the capabilities? At least for intel, I have some work in progress on a branch that would add the notion of vendor, so we could have separate capabilities for let's say AMD and Intel. Erik

On 1/23/19 6:42 AM, Pavel Hrdina wrote:
On Wed, Jan 23, 2019 at 10:08:31AM +0100, Andrea Bolognani wrote:
On Tue, 2019-01-22 at 12:46 -0500, John Ferlan wrote:
Regenerate the output from the QEMU v3.0.0 tag using
./configure --target-list=x86_64-softmmu \ --disable-strip \ --disable-fdt \ --disable-xen \ --disable-werror \ --enable-debug \ --enable-system \ --enable-user \ --enable-linux-user \ --with-pkgversion=v3.0.0
NB: I had to fudge in the qemu-sev-capabilities output from commit d4005609f3 (not sure if there's a specific package to allow it just from build).
While I very much appreciate the effort and agree it's something that we should do, you can't just mix and match replies like that, otherwise you'll end up with nonsensical results such as...
In addition do we really need to change the CPU part of replies every time someone wants to update capabilities? It creates unnecessary noise and in some cases it might remove some advanced features because the capabilities were generated on Server CPU.
True. Of course results are dependent upon who runs them and on what hardware they run them on and of course how the target QEMU was built. There's nothing documented in qemucapabilitiestest.c that says, "build qemu using" - just how to create the replies file using a built qemu. As I found, before running ./configure a "yum builddep qemu" should also be run to ensure whatever the checked out tag needs is installed. So are the results a fault of a bad process or a bad test? Or just something we have to accept that in order to have "recent results"? Are there qemuxml2argvtest's that care about the CPU model? Obviously not - it's just a string. What does care about the model is the SEV output. Are there rules to what is found acceptable? Seems we've accepted odd results in the past. Two examples, commit d4005609f3 which hand edited in the SEV output and commit 6c50cef8 which tied the testing of "launch-security-sev" to the "hand edited" caps for "2.12.0". It seems that test is the only one where we've allowed a DO_TEST_CAPS_VER without also a DO_TEST_CAPS_LATEST for a test. In thinking about that now, it may be a wrong decision. IIRC the _VER test was meant for when there were differences in output between QEMU caps versions, but that the _LATEST should be provided for completeness. Maybe the solution should be that qemucapsprobe lies and fills in the query-sev-capabilities results via some voodoo and black magic. That depends on whether we truly care about what qemuxml2argvtest is testing. Considering that commit d4005609f3 was allowed to proceed even though: "model-id": "Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz", was true, then what difference does it make if this series also hand edits things? It was only after posting did I realize the extent of the SEV testing alterations. So we only test that we create a proper sev command line for qemu 2.12 capabilities. If something ever changed in the short term future which necessitated more/different options, then we'd be in the same situation.
That's the case of the first patch in this series, you basically downgrade the CPU used to generate replies. I know, it requires more effort when preparing patches.
Pavel
As noted above - it has nothing to do with downgrading a CPU - it has everything to do with where one runs tests/qemucapsprobe. Generating the patches shouldn't be that much effort, but the methodology used to generate the *.replies files should be consistent and documented. We may have to just accept there will be some output differences. As long as those differences don't require alterations to some existing qemuxml2argvtest output, then does it really matter? I'm more than happy to let someone else generate the "more recent" .replies files. I think it's something we should do each time QEMU reaches it's final version build. As the 2.12 results show the difference between -rc0 and the final tag were perhaps more extensive. At least nothing required qemuxml2argvtest .args output changes. FWIW: The 4.0 caps just pushed used the same model-id that I have: "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz", However, they were built w/o the "--disable-xen" which seems to be how other caps files were built (based on the results I got). If I remove the --disable-xen from my ./configure command above and regenerate results based on the commit id Cole noted for 4.0, then I got very similar, but not exactly similar results. The difference happened to be that "vmx" was false for me, which reminded me I needed to enable nested virt for my new laptop... With that adjustment, I got the same results. Of course that also changes the results for what I've posted... But it also shows perhaps another "difference" that can occur although we don't care about that difference in our tests. Still, should that be mocked to always return true? (probably not, unless we care that much about masking certain differences). Should we mock the 'model-id' output to be something else too?
[...]
@@ -19181,7 +19180,7 @@ "kvm-pv-tlb-flush": true, "tbm": false, "wdt": false, - "model-id": "Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz",
... an Intel CPU...
[...]
@@ -20321,11 +20320,13 @@ }
{ - "id": "libvirt-50", - "error": { - "class": "GenericError", - "desc": "SEV feature is not available" - } + "return": { + "reduced-phys-bits": 1, + "cbitpos": 47, + "cert-chain": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA", + "pdh": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA" + }, + "id": "libvirt-50" }
... suddenly supporting SEV, which is an AMD-specific feature.
The only sane way to deal with the situation is picking a few QEMU versions and generate the corresponding capabilities on an SEV-capable AMD host; then it's only a matter of making sure SEV testing is performed against those specific QEMU versions rather than random ones.
Well, we could also go with the voodoo or black magic logic and mock the results. Of course what we do depends more on what we care more about? Absolutely valid results based on the CPU used to run qemucapsprobe or generating a caps_VER.ARCH.replies file that allows us to test without needing to have "x86_64.intel.replies" and "x86_64.amd.replies" files. Since using DO_TEST*_LATEST has been the most recent push/request when altering qemuxml2argvtest, then I think it seems we care more that the replies files will have results that return valid data for everything and not : "error": { "class": "GenericError", "desc": "SEV feature is not available" } John
-- Andrea Bolognani / Red Hat / Virtualization
-- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list

On Wed, Jan 23, 2019 at 08:59:52AM -0500, John Ferlan wrote:
On 1/23/19 6:42 AM, Pavel Hrdina wrote:
On Wed, Jan 23, 2019 at 10:08:31AM +0100, Andrea Bolognani wrote:
On Tue, 2019-01-22 at 12:46 -0500, John Ferlan wrote:
Regenerate the output from the QEMU v3.0.0 tag using
./configure --target-list=x86_64-softmmu \ --disable-strip \ --disable-fdt \ --disable-xen \ --disable-werror \ --enable-debug \ --enable-system \ --enable-user \ --enable-linux-user \ --with-pkgversion=v3.0.0
NB: I had to fudge in the qemu-sev-capabilities output from commit d4005609f3 (not sure if there's a specific package to allow it just from build).
While I very much appreciate the effort and agree it's something that we should do, you can't just mix and match replies like that, otherwise you'll end up with nonsensical results such as...
In addition do we really need to change the CPU part of replies every time someone wants to update capabilities? It creates unnecessary noise and in some cases it might remove some advanced features because the capabilities were generated on Server CPU.
True. Of course results are dependent upon who runs them and on what hardware they run them on and of course how the target QEMU was built. There's nothing documented in qemucapabilitiestest.c that says, "build qemu using" - just how to create the replies file using a built qemu. As I found, before running ./configure a "yum builddep qemu" should also be run to ensure whatever the checked out tag needs is installed.
So are the results a fault of a bad process or a bad test? Or just something we have to accept that in order to have "recent results"? Are there qemuxml2argvtest's that care about the CPU model? Obviously not - it's just a string. What does care about the model is the SEV output.
Are there rules to what is found acceptable? Seems we've accepted odd results in the past. Two examples, commit d4005609f3 which hand edited in the SEV output and commit 6c50cef8 which tied the testing of "launch-security-sev" to the "hand edited" caps for "2.12.0".
It seems that test is the only one where we've allowed a DO_TEST_CAPS_VER without also a DO_TEST_CAPS_LATEST for a test. In thinking about that now, it may be a wrong decision. IIRC the _VER test was meant for when there were differences in output between QEMU caps versions, but that the _LATEST should be provided for completeness.
Maybe the solution should be that qemucapsprobe lies and fills in the query-sev-capabilities results via some voodoo and black magic. That depends on whether we truly care about what qemuxml2argvtest is testing.
Considering that commit d4005609f3 was allowed to proceed even though:
"model-id": "Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz",
was true, then what difference does it make if this series also hand edits things? It was only after posting did I realize the extent of the SEV testing alterations. So we only test that we create a proper sev command line for qemu 2.12 capabilities. If something ever changed in the short term future which necessitated more/different options, then we'd be in the same situation.
That's the case of the first patch in this series, you basically downgrade the CPU used to generate replies. I know, it requires more effort when preparing patches.
Pavel
As noted above - it has nothing to do with downgrading a CPU - it has everything to do with where one runs tests/qemucapsprobe. Generating the patches shouldn't be that much effort, but the methodology used to generate the *.replies files should be consistent and documented.
Obviously I know that you didn't downgrade your CPU that you used to generate replies and it depends on the current CPU that is used while generating new replies. Yes we need to improve/document the whole process, in the mean time we can manually avoid constantly changing the CPU model and adding extra noise into the commits. Usually if I need to update replies I replace the files in repository with the generated ones and the I use "git add -p path/to/file" to manually select only relevant changes in order to skip the CPU changes.
We may have to just accept there will be some output differences. As long as those differences don't require alterations to some existing qemuxml2argvtest output, then does it really matter? I'm more than happy to let someone else generate the "more recent" .replies files. I think it's something we should do each time QEMU reaches it's final version build. As the 2.12 results show the difference between -rc0 and the final tag were perhaps more extensive. At least nothing required qemuxml2argvtest .args output changes.
I agree that we should (re)generate capabilities as soon as there is new version of QEMU, nobody was questioning that :).
FWIW: The 4.0 caps just pushed used the same model-id that I have:
"model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz",
However, they were built w/o the "--disable-xen" which seems to be how other caps files were built (based on the results I got). If I remove the --disable-xen from my ./configure command above and regenerate results based on the commit id Cole noted for 4.0, then I got very similar, but not exactly similar results. The difference happened to be that "vmx" was false for me, which reminded me I needed to enable nested virt for my new laptop... With that adjustment, I got the same results. Of course that also changes the results for what I've posted... But it also shows perhaps another "difference" that can occur although we don't care about that difference in our tests. Still, should that be mocked to always return true? (probably not, unless we care that much about masking certain differences). Should we mock the 'model-id' output to be something else too?
This is an interesting idea that we might consider doing, but I'm not sure how it can affect our tests. The replies are not directly used by any other tests then qemucapabilitiestest but the XML files that we use in qemucapabilitiestest are also used by domaincapstest, qemuargv2xmltest, qemucaps2xmltest, qemuxml2argvtest and it might affect all of them. Pavel
[...]
@@ -19181,7 +19180,7 @@ "kvm-pv-tlb-flush": true, "tbm": false, "wdt": false, - "model-id": "Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz",
... an Intel CPU...
[...]
@@ -20321,11 +20320,13 @@ }
{ - "id": "libvirt-50", - "error": { - "class": "GenericError", - "desc": "SEV feature is not available" - } + "return": { + "reduced-phys-bits": 1, + "cbitpos": 47, + "cert-chain": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA", + "pdh": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA" + }, + "id": "libvirt-50" }
... suddenly supporting SEV, which is an AMD-specific feature.
The only sane way to deal with the situation is picking a few QEMU versions and generate the corresponding capabilities on an SEV-capable AMD host; then it's only a matter of making sure SEV testing is performed against those specific QEMU versions rather than random ones.
Well, we could also go with the voodoo or black magic logic and mock the results. Of course what we do depends more on what we care more about? Absolutely valid results based on the CPU used to run qemucapsprobe or generating a caps_VER.ARCH.replies file that allows us to test without needing to have "x86_64.intel.replies" and "x86_64.amd.replies" files.
Since using DO_TEST*_LATEST has been the most recent push/request when altering qemuxml2argvtest, then I think it seems we care more that the replies files will have results that return valid data for everything and not :
"error": { "class": "GenericError", "desc": "SEV feature is not available" }
John
-- Andrea Bolognani / Red Hat / Virtualization
-- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
-- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list

Regenerate the output from the QEMU v3.1.0 tag using ./configure --target-list=x86_64-softmmu \ --disable-strip \ --disable-fdt \ --disable-xen \ --disable-werror \ --enable-debug \ --enable-system \ --enable-user \ --enable-linux-user \ --with-pkgversion=v3.1.0 NB: I had to fudge in the qemu-sev-capabilities output from commit d4005609f3 (not sure if there's a specific package to allow it just from build). Signed-off-by: John Ferlan <jferlan@redhat.com> --- .../caps_3.1.0.x86_64.replies | 93 +++++++++---------- .../caps_3.1.0.x86_64.xml | 28 +++--- 2 files changed, 62 insertions(+), 59 deletions(-) diff --git a/tests/qemucapabilitiesdata/caps_3.1.0.x86_64.replies b/tests/qemucapabilitiesdata/caps_3.1.0.x86_64.replies index 8c537cc763..21738552bd 100644 --- a/tests/qemucapabilitiesdata/caps_3.1.0.x86_64.replies +++ b/tests/qemucapabilitiesdata/caps_3.1.0.x86_64.replies @@ -17,11 +17,11 @@ { "return": { "qemu": { - "micro": 92, - "minor": 0, + "micro": 0, + "minor": 1, "major": 3 }, - "package": "v3.1.0-rc2-48-g039d4e3df0" + "package": "v3.1.0" }, "id": "libvirt-2" } @@ -5686,7 +5686,6 @@ "avx512-vpopcntdq", "la57", "pconfig", - "ssbd", "wbnoinvd", "avx512f", "avx512f", @@ -5711,7 +5710,6 @@ "avx512vnni", "avx512bitalg", "avx512-vpopcntdq", - "ssbd", "wbnoinvd", "pku" ], @@ -5803,7 +5801,6 @@ "pku", "", "avx512vnni", - "ssbd", "avx512f", "avx512f", "avx512f", @@ -19526,12 +19523,12 @@ "svm": false, "invtsc": false, "sse2": true, - "ssbd": false, + "ssbd": true, "est": false, "avx512ifma": false, "tm2": false, "kvm-pv-eoi": true, - "kvm-pv-ipi": false, + "kvm-pv-ipi": true, "cx8": true, "cldemote": false, "kvm-mmu": false, @@ -19539,7 +19536,7 @@ "pge": true, "avx512bitalg": false, "pdcm": false, - "model": 94, + "model": 142, "movbe": true, "nrip-save": false, "ssse3": true, @@ -19552,7 +19549,7 @@ "cx16": true, "de": true, "pconfig": false, - "stepping": 3, + "stepping": 10, "xsave": true, "clflush": true, "skinit": false, @@ -19620,7 +19617,7 @@ "rdseed": true, "avx512-4vnniw": false, "vme": true, - "vmx": true, + "vmx": false, "dtes64": false, "mtrr": true, "rdtscp": true, @@ -19628,7 +19625,7 @@ "kvm-pv-tlb-flush": true, "tbm": false, "wdt": false, - "model-id": "Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz", "sha-ni": false, "abm": true, "avx512pf": false, @@ -19730,12 +19727,12 @@ "svm": false, "invtsc": false, "sse2": true, - "ssbd": false, + "ssbd": true, "est": false, "avx512ifma": false, "tm2": false, "kvm-pv-eoi": true, - "kvm-pv-ipi": false, + "kvm-pv-ipi": true, "cx8": true, "cldemote": false, "kvm-mmu": false, @@ -19743,7 +19740,7 @@ "pge": true, "avx512bitalg": false, "pdcm": false, - "model": 94, + "model": 142, "movbe": true, "nrip-save": false, "ssse3": true, @@ -19756,7 +19753,7 @@ "cx16": true, "de": true, "pconfig": false, - "stepping": 3, + "stepping": 10, "xsave": true, "clflush": true, "skinit": false, @@ -19824,7 +19821,7 @@ "rdseed": true, "avx512-4vnniw": false, "vme": true, - "vmx": true, + "vmx": false, "dtes64": false, "mtrr": true, "rdtscp": true, @@ -19832,7 +19829,7 @@ "kvm-pv-tlb-flush": true, "tbm": false, "wdt": false, - "model-id": "Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz", "sha-ni": false, "abm": true, "avx512pf": false, @@ -19969,11 +19966,11 @@ "invtsc": false, "sse3": true, "sse2": true, - "ssbd": false, + "ssbd": true, "est": false, "avx512ifma": false, "tm2": false, - "kvm-pv-ipi": false, + "kvm-pv-ipi": true, "kvm-pv-eoi": true, "cx8": true, "cldemote": false, @@ -19989,7 +19986,7 @@ "nodeid_msr": false, "pdcm": false, "movbe": true, - "model": 94, + "model": 142, "nrip_save": false, "nrip-save": false, "kvm_pv_unhalt": true, @@ -20004,7 +20001,7 @@ "de": true, "pconfig": false, "enforce": false, - "stepping": 3, + "stepping": 10, "xsave": true, "clflush": true, "skinit": false, @@ -20097,7 +20094,7 @@ "rdrand": true, "rdseed": true, "avx512-4vnniw": false, - "vmx": true, + "vmx": false, "vme": true, "dtes64": false, "mtrr": true, @@ -20108,7 +20105,7 @@ "wdt": false, "pause_filter": false, "sha-ni": false, - "model-id": "Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz", "abm": true, "avx512pf": false, "xstore-en": false @@ -20221,12 +20218,12 @@ "svm": false, "invtsc": true, "sse2": true, - "ssbd": false, + "ssbd": true, "est": false, "avx512ifma": false, "tm2": false, "kvm-pv-eoi": true, - "kvm-pv-ipi": false, + "kvm-pv-ipi": true, "cx8": true, "cldemote": false, "kvm-mmu": false, @@ -20234,7 +20231,7 @@ "pge": true, "avx512bitalg": false, "pdcm": false, - "model": 94, + "model": 142, "movbe": true, "nrip-save": false, "ssse3": true, @@ -20247,7 +20244,7 @@ "cx16": true, "de": true, "pconfig": false, - "stepping": 3, + "stepping": 10, "xsave": true, "clflush": true, "skinit": false, @@ -20315,7 +20312,7 @@ "rdseed": true, "avx512-4vnniw": false, "vme": true, - "vmx": true, + "vmx": false, "dtes64": false, "mtrr": true, "rdtscp": true, @@ -20323,7 +20320,7 @@ "kvm-pv-tlb-flush": true, "tbm": false, "wdt": false, - "model-id": "Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz", "sha-ni": false, "abm": true, "avx512pf": false, @@ -20425,12 +20422,12 @@ "svm": false, "invtsc": true, "sse2": true, - "ssbd": false, + "ssbd": true, "est": false, "avx512ifma": false, "tm2": false, "kvm-pv-eoi": true, - "kvm-pv-ipi": false, + "kvm-pv-ipi": true, "cx8": true, "cldemote": false, "kvm-mmu": false, @@ -20438,7 +20435,7 @@ "pge": true, "avx512bitalg": false, "pdcm": false, - "model": 94, + "model": 142, "movbe": true, "nrip-save": false, "ssse3": true, @@ -20451,7 +20448,7 @@ "cx16": true, "de": true, "pconfig": false, - "stepping": 3, + "stepping": 10, "xsave": true, "clflush": true, "skinit": false, @@ -20519,7 +20516,7 @@ "rdseed": true, "avx512-4vnniw": false, "vme": true, - "vmx": true, + "vmx": false, "dtes64": false, "mtrr": true, "rdtscp": true, @@ -20527,7 +20524,7 @@ "kvm-pv-tlb-flush": true, "tbm": false, "wdt": false, - "model-id": "Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz", "sha-ni": false, "abm": true, "avx512pf": false, @@ -20664,11 +20661,11 @@ "invtsc": true, "sse3": true, "sse2": true, - "ssbd": false, + "ssbd": true, "est": false, "avx512ifma": false, "tm2": false, - "kvm-pv-ipi": false, + "kvm-pv-ipi": true, "kvm-pv-eoi": true, "cx8": true, "cldemote": false, @@ -20684,7 +20681,7 @@ "nodeid_msr": false, "pdcm": false, "movbe": true, - "model": 94, + "model": 142, "nrip_save": false, "nrip-save": false, "kvm_pv_unhalt": true, @@ -20699,7 +20696,7 @@ "de": true, "pconfig": false, "enforce": false, - "stepping": 3, + "stepping": 10, "xsave": true, "clflush": true, "skinit": false, @@ -20792,7 +20789,7 @@ "rdrand": true, "rdseed": true, "avx512-4vnniw": false, - "vmx": true, + "vmx": false, "vme": true, "dtes64": false, "mtrr": true, @@ -20803,7 +20800,7 @@ "wdt": false, "pause_filter": false, "sha-ni": false, - "model-id": "Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz", + "model-id": "Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz", "abm": true, "avx512pf": false, "xstore-en": false @@ -20819,11 +20816,13 @@ } { - "id": "libvirt-50", - "error": { - "class": "GenericError", - "desc": "SEV feature is not available" - } + "return": { + "reduced-phys-bits": 1, + "cbitpos": 47, + "cert-chain": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA", + "pdh": "AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA" + }, + "id": "libvirt-50" } { diff --git a/tests/qemucapabilitiesdata/caps_3.1.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_3.1.0.x86_64.xml index 58395cff2f..25d9091e41 100644 --- a/tests/qemucapabilitiesdata/caps_3.1.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_3.1.0.x86_64.xml @@ -202,6 +202,7 @@ <flag name='tpm-emulator'/> <flag name='mch'/> <flag name='mch.extended-tseg-mbytes'/> + <flag name='sev-guest'/> <flag name='usb-storage.werror'/> <flag name='egl-headless'/> <flag name='vfio-pci.display'/> @@ -212,10 +213,10 @@ <flag name='memory-backend-file.align'/> <flag name='memory-backend-file.pmem'/> <flag name='nvdimm.unarmed'/> - <version>3000092</version> + <version>3001000</version> <kvmVersion>0</kvmVersion> - <microcodeVersion>440976</microcodeVersion> - <package>v3.1.0-rc2-48-g039d4e3df0</package> + <microcodeVersion>441048</microcodeVersion> + <package>v3.1.0</package> <arch>x86_64</arch> <hostCPU type='kvm' model='base' migratability='yes'> <property name='phys-bits' type='number' value='0'/> @@ -339,11 +340,11 @@ <property name='invtsc' type='boolean' value='true' migratable='no'/> <property name='sse3' type='boolean' value='true' migratable='yes'/> <property name='sse2' type='boolean' value='true' migratable='yes'/> - <property name='ssbd' type='boolean' value='false'/> + <property name='ssbd' type='boolean' value='true' migratable='yes'/> <property name='est' type='boolean' value='false'/> <property name='avx512ifma' type='boolean' value='false'/> <property name='tm2' type='boolean' value='false'/> - <property name='kvm-pv-ipi' type='boolean' value='false'/> + <property name='kvm-pv-ipi' type='boolean' value='true' migratable='yes'/> <property name='kvm-pv-eoi' type='boolean' value='true' migratable='yes'/> <property name='cx8' type='boolean' value='true' migratable='yes'/> <property name='cldemote' type='boolean' value='false'/> @@ -359,7 +360,7 @@ <property name='nodeid_msr' type='boolean' value='false'/> <property name='pdcm' type='boolean' value='false'/> <property name='movbe' type='boolean' value='true' migratable='yes'/> - <property name='model' type='number' value='94'/> + <property name='model' type='number' value='142'/> <property name='nrip_save' type='boolean' value='false'/> <property name='nrip-save' type='boolean' value='false'/> <property name='kvm_pv_unhalt' type='boolean' value='true' migratable='yes'/> @@ -374,7 +375,7 @@ <property name='de' type='boolean' value='true' migratable='yes'/> <property name='pconfig' type='boolean' value='false'/> <property name='enforce' type='boolean' value='false'/> - <property name='stepping' type='number' value='3'/> + <property name='stepping' type='number' value='10'/> <property name='xsave' type='boolean' value='true' migratable='yes'/> <property name='clflush' type='boolean' value='true' migratable='yes'/> <property name='skinit' type='boolean' value='false'/> @@ -467,7 +468,7 @@ <property name='rdrand' type='boolean' value='true' migratable='yes'/> <property name='rdseed' type='boolean' value='true' migratable='yes'/> <property name='avx512-4vnniw' type='boolean' value='false'/> - <property name='vmx' type='boolean' value='true' migratable='yes'/> + <property name='vmx' type='boolean' value='false'/> <property name='vme' type='boolean' value='true' migratable='yes'/> <property name='dtes64' type='boolean' value='false'/> <property name='mtrr' type='boolean' value='true' migratable='yes'/> @@ -478,7 +479,7 @@ <property name='wdt' type='boolean' value='false'/> <property name='pause_filter' type='boolean' value='false'/> <property name='sha-ni' type='boolean' value='false'/> - <property name='model-id' type='string' value='Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz'/> + <property name='model-id' type='string' value='Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz'/> <property name='abm' type='boolean' value='true' migratable='yes'/> <property name='avx512pf' type='boolean' value='false'/> <property name='xstore-en' type='boolean' value='false'/> @@ -863,7 +864,6 @@ <blocker name='avx512-vpopcntdq'/> <blocker name='la57'/> <blocker name='pconfig'/> - <blocker name='ssbd'/> <blocker name='wbnoinvd'/> <blocker name='avx512f'/> <blocker name='avx512f'/> @@ -882,7 +882,6 @@ <blocker name='avx512vnni'/> <blocker name='avx512bitalg'/> <blocker name='avx512-vpopcntdq'/> - <blocker name='ssbd'/> <blocker name='wbnoinvd'/> <blocker name='pku'/> </cpu> @@ -921,7 +920,6 @@ <blocker name='pku'/> <blocker name=''/> <blocker name='avx512vnni'/> - <blocker name='ssbd'/> <blocker name='avx512f'/> <blocker name='avx512f'/> <blocker name='avx512f'/> @@ -1376,4 +1374,10 @@ <machine name='pc-0.11' hotplugCpus='yes' maxCpus='255'/> <machine name='pc-0.12' hotplugCpus='yes' maxCpus='255'/> <machine name='pc-0.10' hotplugCpus='yes' maxCpus='255'/> + <sev> + <cbitpos>47</cbitpos> + <reducedPhysBits>1</reducedPhysBits> + <pdh>AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA</pdh> + <certChain>AQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAAAQAAAAAOAAA</certChain> + </sev> </qemuCaps> -- 2.20.1
participants (4)
-
Andrea Bolognani
-
Erik Skultety
-
John Ferlan
-
Pavel Hrdina