qemu-e2k/target/i386
Roman Kagan 1221f15041 i386/hyperv: error out if features requested but unsupported
In order to guarantee compatibility on migration, QEMU should have
complete control over the features it announces to the guest via CPUID.

However, for a number of Hyper-V-related cpu properties, if the
corresponding feature is not supported by the underlying KVM, the
propery is silently ignored and the feature is not announced to the
guest.

Refuse to start with an error instead.

Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
Message-Id: <20180330170209.20627-3-rkagan@virtuozzo.com>
Reviewed-by: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2018-04-09 16:36:38 +02:00
..
hvf error: Strip trailing '\n' from error string arguments (again again) 2018-03-27 10:17:32 -05:00
Makefile.objs sev/i386: add command to initialize the memory encryption context 2018-03-13 17:35:16 +01:00
TODO Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
arch_dump.c exec,dump,i386,ppc,s390x: don't include exec/cpu-all.h explicitly 2017-09-19 18:21:33 +02:00
arch_memory_mapping.c exec,dump,i386,ppc,s390x: don't include exec/cpu-all.h explicitly 2017-09-19 18:21:33 +02:00
bpt_helper.c target-i386: Fix eflags.TF/#DB handling of syscall/sysret insns 2016-12-22 16:01:04 +01:00
cc_helper.c target-i386: Use ctpop helper 2017-01-10 08:49:59 -08:00
cc_helper_template.h Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
cpu-qom.h i386: refactor KVM cpuid code so that it applies to hvf as well 2017-12-22 15:01:48 +01:00
cpu.c i386/hyperv: add hv-frequencies cpu property 2018-04-09 16:36:38 +02:00
cpu.h i386/hyperv: add hv-frequencies cpu property 2018-04-09 16:36:38 +02:00
excp_helper.c accel/tcg: add size paremeter in tlb_fill() 2018-01-25 16:02:24 +01:00
fpu_helper.c target/*/cpu.h: remove softfloat.h 2018-02-21 10:20:24 +00:00
gdbstub.c x86: Fix x86_64 'g' packet response to gdb from 32-bit mode. 2016-12-22 16:00:25 +01:00
hax-all.c hax: Support guest RAM sizes of 4GB or more 2018-02-13 11:44:13 +01:00
hax-darwin.c hax: Support guest RAM sizes of 4GB or more 2018-02-13 11:44:13 +01:00
hax-darwin.h hax: Support guest RAM sizes of 4GB or more 2018-02-13 11:44:13 +01:00
hax-i386.h hax: Support guest RAM sizes of 4GB or more 2018-02-13 11:44:13 +01:00
hax-interface.h hax: Support guest RAM sizes of 4GB or more 2018-02-13 11:44:13 +01:00
hax-mem.c hax: Support guest RAM sizes of 4GB or more 2018-02-13 11:44:13 +01:00
hax-windows.c hax: Support guest RAM sizes of 4GB or more 2018-02-13 11:44:13 +01:00
hax-windows.h hax: Support guest RAM sizes of 4GB or more 2018-02-13 11:44:13 +01:00
helper.c Add the WHPX acceleration enlightenments 2018-02-07 14:09:26 +01:00
helper.h target-i386: correctly propagate retaddr into SVM helpers 2017-02-16 18:37:01 +01:00
hyperv-proto.h hyperv: add header with protocol definitions 2017-09-19 16:20:49 +02:00
hyperv.c hyperv: add header with protocol definitions 2017-09-19 16:20:49 +02:00
hyperv.h Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
int_helper.c target-i386: Use clz and ctz opcodes 2017-01-10 08:06:11 -08:00
kvm-stub.c Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
kvm.c i386/hyperv: error out if features requested but unsupported 2018-04-09 16:36:38 +02:00
kvm_i386.h Move CONFIG_KVM related definitions to kvm_i386.h 2017-07-04 14:30:03 +02:00
machine.c * Migrate MSR_SMI_COUNT (Liran) 2018-03-15 16:49:30 +00:00
mem_helper.c accel/tcg: add size paremeter in tlb_fill() 2018-01-25 16:02:24 +01:00
misc_helper.c target/i386/misc_helper: wrap BQL around another IRQ generator 2017-04-10 10:14:50 +01:00
monitor.c hmp: free sev info 2018-03-20 12:32:06 +00:00
mpx_helper.c target/i386: move cpu_sync_bndcs_hflags() function 2017-07-05 09:12:44 +02:00
ops_sse.h target/i386: fix phminposuw in-place operation 2017-09-19 14:09:11 +02:00
ops_sse_header.h target-i386: Use ctpop helper 2017-01-10 08:49:59 -08:00
seg_helper.c target/i386: simplify handling of conforming code segments on interrupt 2017-07-04 14:30:03 +02:00
sev-stub.c sev/i386: add sev_get_capabilities() 2018-03-13 17:36:06 +01:00
sev.c sev/i386: fix memory leak in sev_guest_init() 2018-04-02 23:05:26 -03:00
sev_i386.h sev/i386: add sev_get_capabilities() 2018-03-13 17:36:06 +01:00
shift_helper_template.h Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
smm_helper.c target/i386: use multiple CPU AddressSpaces 2017-06-07 18:22:02 +02:00
svm.h Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
svm_helper.c target/*helper: don't check retaddr before calling cpu_restore_state 2017-12-27 17:20:44 -08:00
trace-events sev/i386: finalize the SEV guest launch flow 2018-03-13 17:36:05 +01:00
translate.c target/i386: Fix andn instruction 2018-04-05 14:41:54 +02:00
whpx-all.c target/i386: WHPX: set CPUID_EXT_HYPERVISOR bit 2018-04-09 16:36:38 +02:00
xsave_helper.c Include qapi/error.h exactly where needed 2018-02-09 13:50:17 +01:00