kernel BUG at kernel/posix-cpu-timers.c:1389!

Russell King - ARM Linux linux at arm.linux.org.uk
Mon Nov 2 11:54:41 EST 2009


On Mon, Nov 02, 2009 at 05:47:57PM +0100, Nicolas Ferre wrote:
> in arch/arm/mach-at91/at91sam926x_time.c +125
>  .flags = IRQF_SHARED | IRQF_DISABLED | IRQF_TIMER | IRQF_IRQPOLL,
> 
> IRQF_DISABLED is positionned. But on the other hand, I saw in the kernel
> booting messages that:
> "IRQ 1/rtc0: IRQF_DISABLED is not guaranteed on shared IRQs"
> 
> What does this mean ? what is the difference with former way of managing
> shared interrupts ?

If the first IRQ action which is run was registered without IRQF_DISABLED
the entire set will be run without interrupts disabled.

> And above all, what is the proper way to set an IRQ on a shared
> interrupt line ?

The only real solution is to ensure that all requesters use IRQF_DISABLED.



More information about the linux-arm-kernel mailing list