summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Lalancette <clalance@redhat.com>2010-06-16 23:11:12 +0200
committerAvi Kivity <avi@redhat.com>2010-08-01 09:46:50 +0200
commite7dca5c0eba63e4ba8e3586c4b37863fd7fadb5a (patch)
treebe3129575b9a1f8d9a53ceca62452f6b203b8c28
parentKVM: x86: Introduce a workqueue to deliver PIT timer interrupts (diff)
downloadlinux-e7dca5c0eba63e4ba8e3586c4b37863fd7fadb5a.tar.xz
linux-e7dca5c0eba63e4ba8e3586c4b37863fd7fadb5a.zip
KVM: x86: Allow any LAPIC to accept PIC interrupts
If the guest wants to accept timer interrupts on a CPU other than the BSP, we need to remove this gate. Signed-off-by: Chris Lalancette <clalance@redhat.com> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
-rw-r--r--arch/x86/kvm/lapic.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/arch/x86/kvm/lapic.c b/arch/x86/kvm/lapic.c
index 024f6d1c2996..49573c78c24b 100644
--- a/arch/x86/kvm/lapic.c
+++ b/arch/x86/kvm/lapic.c
@@ -1107,13 +1107,11 @@ int kvm_apic_accept_pic_intr(struct kvm_vcpu *vcpu)
u32 lvt0 = apic_get_reg(vcpu->arch.apic, APIC_LVT0);
int r = 0;
- if (kvm_vcpu_is_bsp(vcpu)) {
- if (!apic_hw_enabled(vcpu->arch.apic))
- r = 1;
- if ((lvt0 & APIC_LVT_MASKED) == 0 &&
- GET_APIC_DELIVERY_MODE(lvt0) == APIC_MODE_EXTINT)
- r = 1;
- }
+ if (!apic_hw_enabled(vcpu->arch.apic))
+ r = 1;
+ if ((lvt0 & APIC_LVT_MASKED) == 0 &&
+ GET_APIC_DELIVERY_MODE(lvt0) == APIC_MODE_EXTINT)
+ r = 1;
return r;
}