qemu-e2k/target/i386
Vitaly Kuznetsov 061817a7cc i386: drop FEAT_HYPERV feature leaves
Hyper-V feature leaves are weird. We have some of them in
feature_word_info[] array but we don't use feature_word_info
magic to enable them. Neither do we use feature_dependencies[]
mechanism to validate the configuration as it doesn't allign
well with Hyper-V's many-to-many dependency chains. Some of
the feature leaves hold not only feature bits, but also values.
E.g. FEAT_HV_NESTED_EAX contains both features and the supported
Enlightened VMCS range.

Hyper-V features are already represented in 'struct X86CPU' with
uint64_t hyperv_features so duplicating them in env->features adds
little (or zero) benefits. THe other half of Hyper-V emulation features
is also stored with values in hyperv_vendor_id[], hyperv_limits[],...
so env->features[] is already incomplete.

Remove Hyper-V feature leaves from env->features[] completely.
kvm_hyperv_properties[] is converted to using raw CPUID func/reg
pairs for features, this allows us to get rid of hv_cpuid_get_fw()
conversion.

Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Reviewed-by: Eduardo Habkost <ehabkost@redhat.com>
Message-Id: <20210422161130.652779-8-vkuznets@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
2021-05-31 15:53:03 -04:00
..
hax numa: Teach ram block notifiers about resizeable ram blocks 2021-05-13 18:21:13 +01:00
hvf i386: split cpu accelerators from cpu.c, using AccelCPUClass 2021-05-10 15:41:49 -04:00
kvm i386: drop FEAT_HYPERV feature leaves 2021-05-31 15:53:03 -04:00
nvmm Add NVMM accelerator: x86 CPU support 2021-05-04 14:15:34 +02:00
tcg hw/core: Constify TCGCPUOps 2021-05-26 15:33:59 -07:00
whpx sysemu: Let VMChangeStateHandler take boolean 'running' argument 2021-03-09 23:13:57 +01:00
arch_dump.c
arch_memory_mapping.c
cpu-dump.c i386/cpu_dump: support AVX512 ZMM regs dump 2021-05-31 15:53:03 -04:00
cpu-internal.h i386: split off sysemu part of cpu.c 2021-05-10 15:41:52 -04:00
cpu-param.h
cpu-qom.h
cpu-sysemu.c i386: drop FEAT_HYPERV feature leaves 2021-05-31 15:53:03 -04:00
cpu.c i386: drop FEAT_HYPERV feature leaves 2021-05-31 15:53:03 -04:00
cpu.h i386: drop FEAT_HYPERV feature leaves 2021-05-31 15:53:03 -04:00
gdbstub.c target/i386: gdbstub: only write CR0/CR2/CR3/EFER for sysemu 2021-05-10 15:41:52 -04:00
helper.c i386: make cpu_load_efer sysemu-only 2021-05-10 15:41:52 -04:00
helper.h target/i386: Remove user-only i/o stubs 2021-05-19 12:17:23 -05:00
host-cpu.c accel-cpu: make cpu_realizefn return a bool 2021-05-10 15:41:50 -04:00
host-cpu.h accel-cpu: make cpu_realizefn return a bool 2021-05-10 15:41:50 -04:00
machine.c vmstate: Constify some VMStateDescriptions 2021-05-02 17:24:50 +02:00
meson.build i386: split off sysemu part of cpu.c 2021-05-10 15:41:52 -04:00
monitor.c sev: update sev-inject-launch-secret to make gpa optional 2021-02-16 17:15:39 +01:00
ops_sse_header.h
ops_sse.h
sev_i386.h sev/i386: Add initial support for SEV-ES 2021-02-16 17:15:39 +01:00
sev-stub.c sev/i386: Allow AP booting under SEV-ES 2021-02-16 17:15:39 +01:00
sev.c numa: Teach ram block notifiers about resizeable ram blocks 2021-05-13 18:21:13 +01:00
shift_helper_template.h
svm.h target/i386: move paging mode constants from SVM to cpu.h 2021-05-11 04:11:13 -04:00
trace-events
trace.h
xsave_helper.c