From d76a6c45f000afdc284d7f359046822b15994e86 Mon Sep 17 00:00:00 2001 From: Ben-Ami Yassour Date: Sun, 6 Jul 2008 17:15:07 +0300 Subject: [PATCH] --- yaml --- r: 103755 b: refs/heads/master c: c65bbfa1d693d375da51f9c8aa9fb26f09fa19ed h: refs/heads/master i: 103753: 2be79f2f6bd034637c437a04f2cc81aac5179786 103751: d802827a96752324d307a89ee8b0df5b2d826164 v: v3 --- [refs] | 2 +- trunk/arch/x86/kvm/i8259.c | 6 ++++-- trunk/arch/x86/kvm/irq.h | 2 ++ 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index a7279f5d032e..de20f5cb01fc 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 19fdfa0d133ae216e9d1c69a8333fe63fcf8e584 +refs/heads/master: c65bbfa1d693d375da51f9c8aa9fb26f09fa19ed diff --git a/trunk/arch/x86/kvm/i8259.c b/trunk/arch/x86/kvm/i8259.c index 5857f59ad4aa..c31164e8aa46 100644 --- a/trunk/arch/x86/kvm/i8259.c +++ b/trunk/arch/x86/kvm/i8259.c @@ -130,8 +130,10 @@ void kvm_pic_set_irq(void *opaque, int irq, int level) { struct kvm_pic *s = opaque; - pic_set_irq1(&s->pics[irq >> 3], irq & 7, level); - pic_update_irq(s); + if (irq >= 0 && irq < PIC_NUM_PINS) { + pic_set_irq1(&s->pics[irq >> 3], irq & 7, level); + pic_update_irq(s); + } } /* diff --git a/trunk/arch/x86/kvm/irq.h b/trunk/arch/x86/kvm/irq.h index 2a15be2275c0..7ca47cbb48bb 100644 --- a/trunk/arch/x86/kvm/irq.h +++ b/trunk/arch/x86/kvm/irq.h @@ -30,6 +30,8 @@ #include "ioapic.h" #include "lapic.h" +#define PIC_NUM_PINS 16 + struct kvm; struct kvm_vcpu;