qemu-e2k/target/i386
Eduardo Habkost bb4928c7ca i386: Disable OSPKE on CPU model definitions
Currently, the Cascadelake-Server, Icelake-Client, and
Icelake-Server are always generating the following warning:

  qemu-system-x86_64: warning: \
    host doesn't support requested feature: CPUID.07H:ECX [bit 4]

This happens because OSPKE was never returned by
GET_SUPPORTED_CPUID or x86_cpu_get_supported_feature_word().
OSPKE is a runtime flag automatically set by the KVM module or by
TCG code, was always cleared by x86_cpu_filter_features(), and
was not supposed to appear on the CPU model table.

Remove the OSPKE flag from the CPU model table entries, to avoid
the bogus warning and avoid returning invalid feature data on
query-cpu-* QMP commands.  As OSPKE was always cleared by
x86_cpu_filter_features(), this won't have any guest-visible
impact.

Include a test case that should detect the problem if we introduce
a similar bug again.

Fixes: c7a88b52f6 ("i386: Add new model of Cascadelake-Server")
Fixes: 8a11c62da9 ("i386: Add new CPU model Icelake-{Server,Client}")
Cc: Tao Xu <tao3.xu@intel.com>
Cc: Robert Hoo <robert.hu@linux.intel.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Message-Id: <20190319200515.14999-1-ehabkost@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
2019-03-20 12:18:15 -03:00
..
hvf i386: hvf: Fix smp boot hangs 2019-02-05 16:50:21 +01:00
arch_dump.c
arch_memory_mapping.c
bpt_helper.c
cc_helper_template.h
cc_helper.c
cpu-qom.h
cpu.c i386: Disable OSPKE on CPU model definitions 2019-03-20 12:18:15 -03:00
cpu.h i386: extended the cpuid_level when Intel PT is enabled 2019-03-11 16:33:49 +01:00
excp_helper.c target/i386: rename HF_SVMI_MASK to HF_GUEST_MASK 2018-10-02 19:09:12 +02:00
fpu_helper.c
gdbstub.c gdbstub: Fix i386/x86_64 machine description and add control registers 2019-02-05 16:50:18 +01:00
hax-all.c target: hax: fix errors in comment 2018-12-11 18:28:47 +01:00
hax-i386.h hax: Support for Linux hosts 2019-01-11 13:57:24 +01:00
hax-interface.h
hax-mem.c qemu/queue.h: leave head structs anonymous unless necessary 2019-01-11 15:46:55 +01:00
hax-posix.c hax: Support for Linux hosts 2019-01-11 13:57:24 +01:00
hax-posix.h hax: Support for Linux hosts 2019-01-11 13:57:24 +01:00
hax-windows.c
hax-windows.h
helper.c
helper.h
hyperv-proto.h x86: hv_evmcs CPU flag support 2018-11-06 21:35:04 +01:00
hyperv-stub.c hyperv: qom-ify SynIC 2018-10-19 13:44:14 +02:00
hyperv.c hyperv: process POST_MESSAGE hypercall 2018-10-19 13:44:14 +02:00
hyperv.h hyperv: qom-ify SynIC 2018-10-19 13:44:14 +02:00
int_helper.c
kvm_i386.h
kvm-stub.c
kvm.c i386: kvm: Disable arch_capabilities if MSR can't be set 2019-03-20 11:58:45 -03:00
machine.c hyperv: qom-ify SynIC 2018-10-19 13:44:14 +02:00
Makefile.objs target-i386: add kvm stubs to user-mode emulators 2019-03-11 16:33:49 +01:00
mem_helper.c target/i386: Convert to HAVE_CMPXCHG128 2018-10-18 19:46:53 -07:00
misc_helper.c i386: implement MSR_SMI_COUNT for TCG 2018-07-30 14:00:11 +02:00
monitor.c
mpx_helper.c
ops_sse_header.h
ops_sse.h
seg_helper.c target/i386: Clear RF on SYSCALL instruction 2018-11-06 21:35:05 +01:00
sev_i386.h qapi: make rtc-reset-reinjection and SEV depend on TARGET_I386 2019-02-18 14:44:04 +01:00
sev-stub.c
sev.c Clean up includes 2018-12-20 10:29:08 +01:00
shift_helper_template.h
smm_helper.c i386: implement MSR_SMI_COUNT for TCG 2018-07-30 14:00:11 +02:00
svm_helper.c target/i386: rename HF_SVMI_MASK to HF_GUEST_MASK 2018-10-02 19:09:12 +02:00
svm.h
TODO
trace-events sev/i386: finalize the SEV guest launch flow 2018-03-13 17:36:05 +01:00
translate.c avoid TABs in files that only contain a few 2019-01-11 15:46:56 +01:00
whp-dispatch.h Clean up includes 2018-12-20 10:29:08 +01:00
whpx-all.c
xsave_helper.c