]> xenbits.xensource.com Git - libvirt.git/commit
cpu_map: Drop 'mpx' from x86 cpu models
authorTim Wiederhake <twiederh@redhat.com>
Fri, 9 Feb 2024 10:52:56 +0000 (11:52 +0100)
committerJiri Denemark <jdenemar@redhat.com>
Thu, 2 May 2024 17:56:45 +0000 (19:56 +0200)
commitfa5459517848f333743c771e90eb01faeced3dae
tree1f78d1e297c33ec84602fcabe66b8dd819c1508b
parenta396f76f70440edf6e9a751ce57354ff65379e93
cpu_map: Drop 'mpx' from x86 cpu models

The mpx feature was removed from the corresponding qemu cpu models.
With mpx in the libvirt cpu models, libvirt believes the feature
to be implicitly enabled when creating qemu VMs, while in fact it is
disabled.

This became an issue when commit 94eacd5a5f introduced new vmx-*
features, of which some are dependent on mpx (see "feature_dependencies"
table in qemu target/i386/cpu.c), e.g. vmx-exit-clear-bndcfgs and
vmx-entry-load-bndcfgs. These features cannot be enabled by qemu
without also mpx being enabled, leading to the error message

    error: Failed to create domain from testdomain.xml
    error: operation failed: guest CPU doesn't match
    specification: missing features: mpx,vmx-exit-clear-bndcfgs,
    vmx-entry-load-bndcfgs

when trying to create a VM with a "host-model" cpu on a host that
does support mpx and the mentioned vmx-* features:

    <domain>
      ...
      <cpu mode='host-model' check='full' />
      ...
    </domain>

Resolve the issue by removing mpx from libvirt's cpu models as well.

Signed-off-by: Tim Wiederhake <twiederh@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
66 files changed:
src/cpu_map/x86_Cascadelake-Server-noTSX.xml
src/cpu_map/x86_Cascadelake-Server.xml
src/cpu_map/x86_Icelake-Server-noTSX.xml
src/cpu_map/x86_Icelake-Server.xml
src/cpu_map/x86_Skylake-Client-IBRS.xml
src/cpu_map/x86_Skylake-Client-noTSX-IBRS.xml
src/cpu_map/x86_Skylake-Client.xml
src/cpu_map/x86_Skylake-Server-IBRS.xml
src/cpu_map/x86_Skylake-Server-noTSX-IBRS.xml
src/cpu_map/x86_Skylake-Server.xml
tests/cputestdata/x86_64-cpuid-Core-i5-6600-guest.xml
tests/cputestdata/x86_64-cpuid-Core-i5-6600-host.xml
tests/cputestdata/x86_64-cpuid-Core-i5-6600-json.xml
tests/cputestdata/x86_64-cpuid-Core-i7-7600U-guest.xml
tests/cputestdata/x86_64-cpuid-Core-i7-7600U-host.xml
tests/cputestdata/x86_64-cpuid-Core-i7-7600U-json.xml
tests/cputestdata/x86_64-cpuid-Core-i7-7700-guest.xml
tests/cputestdata/x86_64-cpuid-Core-i7-7700-host.xml
tests/cputestdata/x86_64-cpuid-Core-i7-7700-json.xml
tests/cputestdata/x86_64-cpuid-Core-i7-8550U-guest.xml
tests/cputestdata/x86_64-cpuid-Core-i7-8550U-host.xml
tests/cputestdata/x86_64-cpuid-Core-i7-8550U-json.xml
tests/cputestdata/x86_64-cpuid-Core-i7-8700-guest.xml
tests/cputestdata/x86_64-cpuid-Core-i7-8700-host.xml
tests/cputestdata/x86_64-cpuid-Core-i7-8700-json.xml
tests/cputestdata/x86_64-cpuid-Ice-Lake-Server-guest.xml
tests/cputestdata/x86_64-cpuid-Ice-Lake-Server-host.xml
tests/cputestdata/x86_64-cpuid-Ice-Lake-Server-json.xml
tests/cputestdata/x86_64-cpuid-Xeon-E3-1225-v5-guest.xml
tests/cputestdata/x86_64-cpuid-Xeon-E3-1225-v5-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-E3-1225-v5-json.xml
tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5-guest.xml
tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5-json.xml
tests/cputestdata/x86_64-cpuid-Xeon-Gold-5115-guest.xml
tests/cputestdata/x86_64-cpuid-Xeon-Gold-5115-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-Gold-5115-json.xml
tests/cputestdata/x86_64-cpuid-Xeon-Gold-6130-guest.xml
tests/cputestdata/x86_64-cpuid-Xeon-Gold-6130-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-Gold-6130-json.xml
tests/cputestdata/x86_64-cpuid-Xeon-Gold-6148-guest.xml
tests/cputestdata/x86_64-cpuid-Xeon-Gold-6148-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-Gold-6148-json.xml
tests/cputestdata/x86_64-cpuid-Xeon-Platinum-8268-guest.xml
tests/cputestdata/x86_64-cpuid-Xeon-Platinum-8268-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-Platinum-8268-json.xml
tests/cputestdata/x86_64-cpuid-Xeon-Platinum-9242-guest.xml
tests/cputestdata/x86_64-cpuid-Xeon-Platinum-9242-host.xml
tests/cputestdata/x86_64-cpuid-Xeon-Platinum-9242-json.xml
tests/cputestdata/x86_64-cpuid-baseline-Cascadelake+Icelake.xml
tests/cputestdata/x86_64-cpuid-baseline-Cascadelake+Skylake-IBRS.xml
tests/cputestdata/x86_64-cpuid-baseline-Cascadelake+Skylake.xml
tests/cputestdata/x86_64-cpuid-baseline-Cooperlake+Cascadelake.xml
tests/cputestdata/x86_64-cpuid-baseline-Cooperlake+Icelake.xml
tests/cputestdata/x86_64-cpuid-baseline-Skylake-Client+Server.xml
tests/domaincapsdata/qemu_4.2.0-q35.x86_64.xml
tests/domaincapsdata/qemu_4.2.0.x86_64.xml
tests/domaincapsdata/qemu_5.0.0-q35.x86_64.xml
tests/domaincapsdata/qemu_5.0.0.x86_64.xml
tests/qemuxmlconfdata/cpu-Icelake-Server-pconfig.x86_64-latest.args
tests/qemuxmlconfdata/cpu-host-model-fallback-kvm.x86_64-4.2.0.args
tests/qemuxmlconfdata/cpu-host-model-fallback-kvm.x86_64-5.0.0.args
tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-4.2.0.args
tests/qemuxmlconfdata/cpu-host-model-kvm.x86_64-5.0.0.args
tests/qemuxmlconfdata/cpu-host-model-nofallback-kvm.x86_64-4.2.0.args
tests/qemuxmlconfdata/cpu-host-model-nofallback-kvm.x86_64-5.0.0.args