On Tue, 23 May 2000, Bruce Evans wrote:

> The patch seems to have completely broken fast interrupts.
> GET_FAST_INTR_LOCK is neither necessary nor sufficient as far as I can see.
> The necessary and sufficient locking is done by COM_LOCK() in individual
> drivers.  The patch changed GET_FAST_INTR_LOCK from s_lock(&fast_intr_lock),
> which does nothing very well, to `sti(); get_mplock(); cli();', which
> essentially de-prioritizes "fast" interrupts from "higher than the highest"
> (higher than clock interrupts which are nominally highest) to "lower than
> the lowest" (lower than all normal interrupts, all software interrupts,
> and all MP-unsafe syscalls).

        Yes, this explains problems with sio.

> Untested fix:

        Thank you. It works and no crashes experienced yet.

--
Boris Popov
http://www.butya.kz/~bp/



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to