[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

CVS: cvs.openbsd.org: src



CVSROOT:	/cvs
Module name:	src
Changes by:	niklas_(_at_)_cvs_(_dot_)_openbsd_(_dot_)_org	2004/08/12 00:11:57

Modified files:
	sys/arch/i386/i386: ioapic.c apicvec.s 

Log message:
Fix the shared irq problem, by allocating a low priority vector
so that the "high" pri interrupt gets blocked by the "low" spl & irq handler,
and raise the cpl to the "high" level in the handler, so that no other
in fact lower-leveled, interrupts can preempt the handling of the "high"
interrupt.  This means that the "low" interrupt gets the same quality treatment,
thus causing some degradation in performance.  Therefore we still issue a
diagnostic, so people can try to avoid the situation by tweaking their BIOS
settings. Note, there is still issues with dynamically established interrupts
which cause irq sharing, we are working on that.