diff options
| author | Vitaly Kuznetsov <vkuznets@redhat.com> | 2019-05-17 16:19:20 +0200 |
|---|---|---|
| committer | Paolo Bonzini <pbonzini@redhat.com> | 2019-06-21 02:29:38 +0200 |
| commit | e48ddcc6ce13323087133f5922f8eb2fe516817b (patch) | |
| tree | 95ec7889bab11bbfba0aefef2cebed488b814bdb /target/i386/cpu.c | |
| parent | fb19f72b774ce47cd26955ad61547bc3f7f02626 (diff) | |
| download | focaccia-qemu-e48ddcc6ce13323087133f5922f8eb2fe516817b.tar.gz focaccia-qemu-e48ddcc6ce13323087133f5922f8eb2fe516817b.zip | |
i386/kvm: implement 'hv-passthrough' mode
In many case we just want to give Windows guests all currently supported Hyper-V enlightenments and that's where this new mode may come handy. We pass through what was returned by KVM_GET_SUPPORTED_HV_CPUID. hv_cpuid_check_and_set() is modified to also set cpu->hyperv_* flags as we may want to check them later (and we actually do for hv_runtime, hv_synic,...). 'hv-passthrough' is a development only feature, a migration blocker is added to prevent issues while migrating between hosts with different feature sets. Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com> Message-Id: <20190517141924.19024-6-vkuznets@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'target/i386/cpu.c')
| -rw-r--r-- | target/i386/cpu.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/target/i386/cpu.c b/target/i386/cpu.c index e90c1acc83..e07996c729 100644 --- a/target/i386/cpu.c +++ b/target/i386/cpu.c @@ -5883,6 +5883,7 @@ static Property x86_cpu_properties[] = { HYPERV_FEAT_EVMCS, 0), DEFINE_PROP_BIT64("hv-ipi", X86CPU, hyperv_features, HYPERV_FEAT_IPI, 0), + DEFINE_PROP_BOOL("hv-passthrough", X86CPU, hyperv_passthrough, false), DEFINE_PROP_BOOL("check", X86CPU, check_cpuid, true), DEFINE_PROP_BOOL("enforce", X86CPU, enforce_cpuid, false), |