summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorAvi Kivity <avi@qumranet.com>2008-08-17 16:03:46 +0300
committerAvi Kivity <avi@qumranet.com>2008-10-15 10:15:19 +0200
commitdc7404cea34ef997dfe89ca94d16358e9d29c8d8 (patch)
treef62ea13dc8a824f40543c4d690fbe1f3238a3084 /arch
parent85428ac7c39ab5fff23b5d14ccb32941e9401285 (diff)
downloadlinux-dc7404cea34ef997dfe89ca94d16358e9d29c8d8.tar.gz
linux-dc7404cea34ef997dfe89ca94d16358e9d29c8d8.tar.bz2
linux-dc7404cea34ef997dfe89ca94d16358e9d29c8d8.zip
KVM: Handle spurious acks for PIT interrupts
Spurious acks can be generated, for example if the PIC is being reset. Handle those acks gracefully rather than flooding the log with warnings. Signed-off-by: Avi Kivity <avi@qumranet.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/x86/kvm/i8254.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/kvm/i8254.c b/arch/x86/kvm/i8254.c
index 7d04dd3ef857..c842060c6c04 100644
--- a/arch/x86/kvm/i8254.c
+++ b/arch/x86/kvm/i8254.c
@@ -228,7 +228,7 @@ void kvm_pit_ack_irq(struct kvm_irq_ack_notifier *kian)
irq_ack_notifier);
spin_lock(&ps->inject_lock);
if (atomic_dec_return(&ps->pit_timer.pending) < 0)
- WARN_ON(1);
+ atomic_inc(&ps->pit_timer.pending);
ps->irq_ack = 1;
spin_unlock(&ps->inject_lock);
}