KVM: x86: Make Hyper-V emulation optional
[sfrench/cifs-2.6.git] / arch / x86 / kvm / cpuid.c
index dda6fc4cfae886e9d1b1c6c458e87f2f2b67447a..1b278a3f0689506c0c37c5fdf3d23e68a53f9942 100644 (file)
@@ -314,11 +314,15 @@ EXPORT_SYMBOL_GPL(kvm_update_cpuid_runtime);
 
 static bool kvm_cpuid_has_hyperv(struct kvm_cpuid_entry2 *entries, int nent)
 {
+#ifdef CONFIG_KVM_HYPERV
        struct kvm_cpuid_entry2 *entry;
 
        entry = cpuid_entry2_find(entries, nent, HYPERV_CPUID_INTERFACE,
                                  KVM_CPUID_INDEX_NOT_SIGNIFICANT);
        return entry && entry->eax == HYPERV_CPUID_SIGNATURE_EAX;
+#else
+       return false;
+#endif
 }
 
 static void kvm_vcpu_after_set_cpuid(struct kvm_vcpu *vcpu)
@@ -433,11 +437,13 @@ static int kvm_set_cpuid(struct kvm_vcpu *vcpu, struct kvm_cpuid_entry2 *e2,
                return 0;
        }
 
+#ifdef CONFIG_KVM_HYPERV
        if (kvm_cpuid_has_hyperv(e2, nent)) {
                r = kvm_hv_vcpu_init(vcpu);
                if (r)
                        return r;
        }
+#endif
 
        r = kvm_check_cpuid(vcpu, e2, nent);
        if (r)