[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Interrupt handlers and mutex
On a single CPU system, the thread that has acquired the mutex has also changed
the IPL which inhibits the interrupt (assuming the IPL associated with the
mutex is the same as the interrupt handler which may wish to acquire it, but if
the IPL is too low, then you would have the condition that you have described
On Dec 31, 2009, at 4:41 PM, der Mouse wrote:
>>> (2) What happens when the interrupt handler cannot acquire the
>>> mutex? Will the LWP that holds it ever be able to run again?
>> That can't happen. The cpu will spin until the mutex is acquired.
> How can it ever be acquired? As long as the CPU sits spinning in the
> interrupt handler nothing but higher-priority interrupt handlers will
> get a chance to run, so the thread holding it can never finish its job
> and release it.
> Sure, if it's an MP system and the holding thread is on another CPU, I
> can see it, but I can't see how that can be guaranteed to be the case.
> There's clearly something I'm missing here. What is it?
> /~\ The ASCII Mouse
> \ / Ribbon Campaign
> X Against HTML mouse%rodents-montreal.org@localhost
> / \ Email! 7D C8 61 52 5D E7 2D 39 4E F1 31 3E E8 B3 27 4B
Main Index |
Thread Index |