Re: linux interrupt handling problem

Alan Cox (alan@lxorguk.ukuu.org.uk)
Tue, 9 Nov 1999 19:06:56 +0000 (GMT)


> Date: Tue, 9 Nov 1999 16:37:32 +0000 (GMT)
> From: Alan Cox <alan@lxorguk.ukuu.org.uk>
>
> Add an arch specific
>
> spin_lockat_cli(lock, flags, pri)
>
> Smells too much like spl(), which has in the past been deemed
> evil by the king penguin.

He can deem what he likes evil. The plain truth is simple. MacOS can do this,
Linux can't. It is certainly not a generic solution thats why I said it
belongs in arch code. It is really dropping an ultra-thin RT layer on
Linux m68k, and pretty much all of Linus "here be deadlock" and other
comments apply.

However if you want to do 64Kbit sync off a MacII or 38,400 async you have
to accept that the 85x30 series devices are a real time problem.

You don't want to pollute the main code with irq levels but you do want to
draw a line and say "below this IPL is linux" "above this IPL its party
time". You define all the Linux locking to work by raising to the given IPL
not the top IPL, and you play _very_ carefully in your 'real time' IRQ
handlers.

Alan

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/