|
@@ -192,12 +192,13 @@ static int ioapic_deliver(struct kvm_ioapic *ioapic, int irq)
|
|
|
|
|
|
int kvm_ioapic_set_irq(struct kvm_ioapic *ioapic, int irq, int level)
|
|
|
{
|
|
|
- u32 old_irr = ioapic->irr;
|
|
|
+ u32 old_irr;
|
|
|
u32 mask = 1 << irq;
|
|
|
union kvm_ioapic_redirect_entry entry;
|
|
|
int ret = 1;
|
|
|
|
|
|
spin_lock(&ioapic->lock);
|
|
|
+ old_irr = ioapic->irr;
|
|
|
if (irq >= 0 && irq < IOAPIC_NUM_PINS) {
|
|
|
entry = ioapic->redirtbl[irq];
|
|
|
level ^= entry.fields.polarity;
|