diff options
author | Paolo Bonzini <pbonzini@redhat.com> | 2015-09-28 12:58:14 +0300 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2015-10-01 16:06:34 +0300 |
commit | d6a858d13e5d02b97daab5ba0648c704ae3f9517 (patch) | |
tree | bcc2e51b0befb078030f07b07aef3a66829ff950 | |
parent | 9eec50b8bbe1535c440a1ee88c1958f78fc55957 (diff) | |
download | linux-d6a858d13e5d02b97daab5ba0648c704ae3f9517.tar.xz |
KVM: vmx: disable posted interrupts if no local APIC
Uniprocessor 32-bit randconfigs can disable the local APIC, and posted
interrupts require reserving a vector on the LAPIC, so they are
incompatible.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r-- | arch/x86/kvm/vmx.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c index 324b09ff1def..0f15e2382109 100644 --- a/arch/x86/kvm/vmx.c +++ b/arch/x86/kvm/vmx.c @@ -983,7 +983,8 @@ static inline bool cpu_has_vmx_virtual_intr_delivery(void) static inline bool cpu_has_vmx_posted_intr(void) { - return vmcs_config.pin_based_exec_ctrl & PIN_BASED_POSTED_INTR; + return IS_ENABLED(CONFIG_X86_LOCAL_APIC) && + vmcs_config.pin_based_exec_ctrl & PIN_BASED_POSTED_INTR; } static inline bool cpu_has_vmx_apicv(void) |