diff options
author | Jan Kiszka <jan.kiszka@siemens.com> | 2008-09-26 09:30:54 +0200 |
---|---|---|
committer | Avi Kivity <avi@redhat.com> | 2008-12-31 15:51:42 +0100 |
commit | 26df99c6c5807115f06d4e1abae397b7f5f3e00c (patch) | |
tree | d0ab22cc61ddd6d3ae0ea59a8aba83c49982553d | |
parent | KVM: x86: VCPU with pending NMI is runnabled (diff) | |
download | linux-26df99c6c5807115f06d4e1abae397b7f5f3e00c.tar.xz linux-26df99c6c5807115f06d4e1abae397b7f5f3e00c.zip |
KVM: Kick NMI receiving VCPU
Kick the NMI receiving VCPU in case the triggering caller runs in a
different context.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
-rw-r--r-- | arch/x86/kvm/lapic.c | 1 | ||||
-rw-r--r-- | virt/kvm/ioapic.c | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/arch/x86/kvm/lapic.c b/arch/x86/kvm/lapic.c index 206cc11a1c97..304f9ddbdd51 100644 --- a/arch/x86/kvm/lapic.c +++ b/arch/x86/kvm/lapic.c @@ -354,6 +354,7 @@ static int __apic_accept_irq(struct kvm_lapic *apic, int delivery_mode, case APIC_DM_NMI: kvm_inject_nmi(vcpu); + kvm_vcpu_kick(vcpu); break; case APIC_DM_INIT: diff --git a/virt/kvm/ioapic.c b/virt/kvm/ioapic.c index 53772bb46320..c8f939c55075 100644 --- a/virt/kvm/ioapic.c +++ b/virt/kvm/ioapic.c @@ -150,6 +150,7 @@ static int ioapic_inj_irq(struct kvm_ioapic *ioapic, static void ioapic_inj_nmi(struct kvm_vcpu *vcpu) { kvm_inject_nmi(vcpu); + kvm_vcpu_kick(vcpu); } static u32 ioapic_get_delivery_bitmask(struct kvm_ioapic *ioapic, u8 dest, |