diff options
author | Paolo Bonzini <pbonzini@redhat.com> | 2018-12-20 13:11:00 +0100 |
---|---|---|
committer | Eduardo Habkost <ehabkost@redhat.com> | 2019-01-14 12:23:36 -0200 |
commit | ecb85fe48cacb2f8740186e81f2f38a2e02bd963 (patch) | |
tree | 0720c11b0c9ffb2bfc555958576cadb24fdb754d /hw | |
parent | 483c6ad426dbab72d912fe4793d7d558671aa727 (diff) | |
download | qemu-ecb85fe48cacb2f8740186e81f2f38a2e02bd963.zip qemu-ecb85fe48cacb2f8740186e81f2f38a2e02bd963.tar.gz qemu-ecb85fe48cacb2f8740186e81f2f38a2e02bd963.tar.bz2 |
target/i386: Disable MPX support on named CPU models
MPX support is being phased out by Intel; GCC has dropped it, Linux
is also going to do that. Even though KVM will have special code
to support MPX after the kernel proper stops enabling it in XCR0,
we probably also want to deprecate that in a few years. As a start,
do not enable it by default for any named CPU model starting with
the 4.0 machine types; this include Skylake, Icelake and Cascadelake.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-Id: <20181220121100.21554-1-pbonzini@redhat.com>
Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Diffstat (limited to 'hw')
-rw-r--r-- | hw/i386/pc.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/hw/i386/pc.c b/hw/i386/pc.c index 5cac33f..73d688f 100644 --- a/hw/i386/pc.c +++ b/hw/i386/pc.c @@ -115,6 +115,13 @@ GlobalProperty pc_compat_3_1[] = { { "Opteron_G3" "-" TYPE_X86_CPU, "rdtscp", "off" }, { "Opteron_G4" "-" TYPE_X86_CPU, "rdtscp", "off" }, { "Opteron_G5" "-" TYPE_X86_CPU, "rdtscp", "off" }, + { "Skylake-Client" "-" TYPE_X86_CPU, "mpx", "on" }, + { "Skylake-Client-IBRS" "-" TYPE_X86_CPU, "mpx", "on" }, + { "Skylake-Server" "-" TYPE_X86_CPU, "mpx", "on" }, + { "Skylake-Server-IBRS" "-" TYPE_X86_CPU, "mpx", "on" }, + { "Cascadelake-Server" "-" TYPE_X86_CPU, "mpx", "on" }, + { "Icelake-Client" "-" TYPE_X86_CPU, "mpx", "on" }, + { "Icelake-Server" "-" TYPE_X86_CPU, "mpx", "on" }, }; const size_t pc_compat_3_1_len = G_N_ELEMENTS(pc_compat_3_1); |