If we get a stray interrupt, return after logging it. In the extremely

rare case of a stray interrupt to an unregistered source (such as a stray
interrupt from the 8259As when using APIC), this could result in a page
fault when it tried to walk the list of interrupt handlers to execute
INTR_FAST handlers.  This bug was introduced with the intr_event changes,
so it's not present in 5.x or 6.x.

Submitted by:	Mark Tinguely tinguely at casselton dot net
This commit is contained in:
John Baldwin 2005-11-28 20:18:43 +00:00
parent ef627e7da0
commit d6ef938e56
2 changed files with 2 additions and 0 deletions

View File

@ -190,6 +190,7 @@ intr_execute_handlers(struct intsrc *isrc, struct intrframe *iframe)
log(LOG_CRIT,
"too many stray irq %d's: not logging anymore\n",
vector);
return;
}
/*

View File

@ -190,6 +190,7 @@ intr_execute_handlers(struct intsrc *isrc, struct intrframe *iframe)
log(LOG_CRIT,
"too many stray irq %d's: not logging anymore\n",
vector);
return;
}
/*