tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Interrupt handlers and mutex



der Mouse, 

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 
below).

Regards,
Frank

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



Home | Main Index | Thread Index | Old Index