Re: linux interrupt handling problem

Jes Sorensen (Jes.Sorensen@cern.ch)
10 Nov 1999 09:40:56 +0100


>>>>> "Alan" == Alan Cox <alan@lxorguk.ukuu.org.uk> writes:

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

Alan> Tons of kernel code does

Alan> spin_lock_irqsave(...) Sit around spin_unlock_irqrestore(...)

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

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

Thats an interesting idea, however it's going to open up a tremendous
can of worms since you need a way to tag what is 'rt bits' on your
machine and how to make sure the right subsystems don't disable
them. Ie. what parts of the serial layer needs to mask out everything
and which don't.

Jes

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