diff options
author | Niklas Hallqvist <niklas@cvs.openbsd.org> | 2005-05-28 05:15:19 +0000 |
---|---|---|
committer | Niklas Hallqvist <niklas@cvs.openbsd.org> | 2005-05-28 05:15:19 +0000 |
commit | 6a28bc2171077443d8e80c12f967491687b7aac3 (patch) | |
tree | d8f9e386cee694b608e5c516bec94caa72cc51cf /sys/arch | |
parent | 41cea4848702e95aadcd65a080785233dc8298e0 (diff) |
If irq-sharing happens over different ioapics, we must not overwrite setup info for one of them
Diffstat (limited to 'sys/arch')
-rw-r--r-- | sys/arch/amd64/amd64/intr.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/arch/amd64/amd64/intr.c b/sys/arch/amd64/amd64/intr.c index 239b641a464..703cc3caf47 100644 --- a/sys/arch/amd64/amd64/intr.c +++ b/sys/arch/amd64/amd64/intr.c @@ -1,4 +1,4 @@ -/* $OpenBSD: intr.c,v 1.7 2005/04/26 20:56:59 miod Exp $ */ +/* $OpenBSD: intr.c,v 1.8 2005/05/28 05:15:18 niklas Exp $ */ /* $NetBSD: intr.c,v 1.3 2003/03/03 22:16:20 fvdl Exp $ */ /* @@ -286,7 +286,7 @@ intr_allocate_slot(struct pic *pic, int legacy_irq, int pin, int level, ci->ci_isources[slot] = isp; simple_unlock(&ci->ci_slock); } else { - if (isp->is_pin != pin) { + if (isp->is_pic != pic || isp->is_pin != pin) { if (pic == &i8259_pic) return EINVAL; goto other; |