local_irq_save not masking interrupts
Scott Wood
scottwood at freescale.com
Wed Sep 27 02:27:04 EST 2006
Alex Zeffertt wrote:
> I agree this indicates an intent to make it atomic, but I don't see how
> this could cause interrupts to become re-enabled during the request_irq()
> call. Also, since I am calling request_irq at insmod time, i.e. in process
> context, both GFP_ flags *should* work.
You're effectively not in process context when you disable IRQs (at
least, if you want them to stay that way). By specifying GFP_KERNEL,
you're giving the allocator permission to go to sleep, enable IRQs, etc.
The IRQ enabling will happen any time cache_grow() is called with
GFP_WAIT (which is part of GFP_KERNEL), assuming a growable slab.
-Scott
More information about the Linuxppc-embedded
mailing list