Re: linux interrupt handling problem

Alan Cox (alan@lxorguk.ukuu.org.uk)
Tue, 9 Nov 1999 17:04:32 +0000 (GMT)


> Alan> performance. On modern machines and things like the PC what you
> Alan> say is very true but not on old m68k boxen
>
> I still don't see your point, if all non critical interrupts are
> running with sti(), then your critical one (ie. serial in this case)
> can interrupt any time. The serial handler is implemented so it runs
> with all other interrupts disabled, ie. it never gets disturbed by
> anyone.
>
> Where's the problem?

Tons of kernel code does

spin_lock_irqsave(...)
Sit around
spin_unlock_irqrestore(...)

On the 68K you really do want that to be spin_lock_irqsave_except_rtbits()

and you really do need that. It isnt even down to poor driver writing, the
timing constraints on an 8530 on an old 68K box are horrible.

Right now a mac68k is pushing it to do 19200 baud in Linux but with rt hacks
will do 115,200 and with irq path tidying should do 230,400

-
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/