Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/sommerfeld_i386mp_1]: src/sys/arch/i386/isa MP interrupt routing bugfix:...
details: https://anonhg.NetBSD.org/src/rev/989c3bff8960
branches: sommerfeld_i386mp_1
changeset: 482322:989c3bff8960
user: sommerfeld <sommerfeld%NetBSD.org@localhost>
date: Sat Dec 02 03:55:09 2000 +0000
description:
MP interrupt routing bugfix: Don't trip over nonexistant ISA bus
before we get to the EISA fallback code..
diffstat:
sys/arch/i386/isa/isa_machdep.c | 16 +++++++++-------
1 files changed, 9 insertions(+), 7 deletions(-)
diffs (35 lines):
diff -r 94f0b07805e6 -r 989c3bff8960 sys/arch/i386/isa/isa_machdep.c
--- a/sys/arch/i386/isa/isa_machdep.c Mon Nov 27 01:09:00 2000 +0000
+++ b/sys/arch/i386/isa/isa_machdep.c Sat Dec 02 03:55:09 2000 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: isa_machdep.c,v 1.45.2.4 2000/08/21 02:25:16 sommerfeld Exp $ */
+/* $NetBSD: isa_machdep.c,v 1.45.2.5 2000/12/02 03:55:09 sommerfeld Exp $ */
#define ISA_DMA_STATS
@@ -505,17 +505,19 @@
struct intrhand **p, *q, *ih;
static struct intrhand fakehand = {fakeintr};
#if NIOAPIC > 0
- struct mp_intr_map *mip;
+ struct mp_intr_map *mip = NULL;
if (mp_busses != NULL) {
int mpspec_pin = irq;
int airq;
int bus = mp_isa_bus;
-
- for (mip = mp_busses[bus].mb_intrs; mip != NULL; mip=mip->next) {
- if (mip->bus_pin == mpspec_pin) {
- airq = mip->ioapic_ih | irq;
- break;
+ if (mp_isa_bus != -1) {
+ for (mip = mp_busses[bus].mb_intrs; mip != NULL;
+ mip=mip->next) {
+ if (mip->bus_pin == mpspec_pin) {
+ airq = mip->ioapic_ih | irq;
+ break;
+ }
}
}
#if NEISA > 0
Home |
Main Index |
Thread Index |
Old Index