]> xenbits.xensource.com Git - qemu-xen.git/commitdiff
kvm: Remove x2apic feature from CPU model when kernel_irqchip is off
authorLan Tianyu <tianyu.lan@intel.com>
Thu, 25 Feb 2016 15:15:12 +0000 (23:15 +0800)
committerEduardo Habkost <ehabkost@redhat.com>
Mon, 14 Mar 2016 20:26:06 +0000 (17:26 -0300)
x2apic feature is in the kvm_default_props and automatically added to all
CPU models when KVM is enabled. But userspace devices don't support x2apic
which can't be enabled without the in-kernel irqchip. It will trigger
warning of "host doesn't support requested feature: CPUID.01H:ECX.x2apic
[bit 21]" when kernel_irqchip is off. This patch is to fix it via removing
x2apic feature when kernel_irqchip is off.

Signed-off-by: Lan Tianyu <tianyu.lan@intel.com>
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
target-i386/cpu.c

index 0f38d1eae317ac4cc155d7623fa1712ab6adc77d..3ea6b294a45a46099ff1d679388f26764b31ee07 100644 (file)
@@ -2132,6 +2132,10 @@ static void x86_cpu_load_def(X86CPU *cpu, X86CPUDefinition *def, Error **errp)
 
     /* Special cases not set in the X86CPUDefinition structs: */
     if (kvm_enabled()) {
+        if (!kvm_irqchip_in_kernel()) {
+            x86_cpu_change_kvm_default("x2apic", "off");
+        }
+
         x86_cpu_apply_props(cpu, kvm_default_props);
     }