diff options
Diffstat (limited to 'virt/kvm/ioapic.c')
| -rw-r--r-- | virt/kvm/ioapic.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/virt/kvm/ioapic.c b/virt/kvm/ioapic.c index 53772bb46320..23b81cf242af 100644 --- a/virt/kvm/ioapic.c +++ b/virt/kvm/ioapic.c | |||
| @@ -150,10 +150,11 @@ static int ioapic_inj_irq(struct kvm_ioapic *ioapic, | |||
| 150 | static void ioapic_inj_nmi(struct kvm_vcpu *vcpu) | 150 | static void ioapic_inj_nmi(struct kvm_vcpu *vcpu) |
| 151 | { | 151 | { |
| 152 | kvm_inject_nmi(vcpu); | 152 | kvm_inject_nmi(vcpu); |
| 153 | kvm_vcpu_kick(vcpu); | ||
| 153 | } | 154 | } |
| 154 | 155 | ||
| 155 | static u32 ioapic_get_delivery_bitmask(struct kvm_ioapic *ioapic, u8 dest, | 156 | u32 kvm_ioapic_get_delivery_bitmask(struct kvm_ioapic *ioapic, u8 dest, |
| 156 | u8 dest_mode) | 157 | u8 dest_mode) |
| 157 | { | 158 | { |
| 158 | u32 mask = 0; | 159 | u32 mask = 0; |
| 159 | int i; | 160 | int i; |
| @@ -207,7 +208,8 @@ static int ioapic_deliver(struct kvm_ioapic *ioapic, int irq) | |||
| 207 | "vector=%x trig_mode=%x\n", | 208 | "vector=%x trig_mode=%x\n", |
| 208 | dest, dest_mode, delivery_mode, vector, trig_mode); | 209 | dest, dest_mode, delivery_mode, vector, trig_mode); |
| 209 | 210 | ||
| 210 | deliver_bitmask = ioapic_get_delivery_bitmask(ioapic, dest, dest_mode); | 211 | deliver_bitmask = kvm_ioapic_get_delivery_bitmask(ioapic, dest, |
| 212 | dest_mode); | ||
| 211 | if (!deliver_bitmask) { | 213 | if (!deliver_bitmask) { |
| 212 | ioapic_debug("no target on destination\n"); | 214 | ioapic_debug("no target on destination\n"); |
| 213 | return 0; | 215 | return 0; |
