Re: irq_disable() not working

From
Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date
2008-09-23 09:20:34
Reply to
Wolfgang Grandegger, 2008-09-23
On Tue, 2008-09-23 at 11:08 +0200, Wolfgang Grandegger wrote:
I'm trying to understand how irq_disable() is supposed to work on
PowerPC systems. Most PowerPC PIC do *not* implement the enable and
disable, but just the unmask and mask methods, e.g:

  http://lxr.linux.no/linux+v2.6.26.5/arch/powerpc/sysdev/mpic.c#L867

The irq_disable() function will then call the default function
default_disable():

  http://lxr.linux.no/linux+v2.6.26.5/kernel/irq/chip.c#L234

which does not *nothing*. I do not see how the interrupt gets disabled
on the hardware level. Obviously I have missed something. TIA for
clarification.
Lazy masking ? ie, look what happens if the irq happens while disabled.

Ben.
Thread (2 messages) 2 messages, 2 authors, last reply 2008-09-23
Keyboard shortcuts
hback out one level
jnext message in thread / next series-diff position
kprevious message in thread / previous series-diff position
ldrill in
Escclose help / fold thread tree
?toggle this help