kernel BUG at kernel/posix-cpu-timers.c:1389!
From: Uwe Kleine-König <hidden>
Date: 2009-11-30 13:21:16
On Mon, Nov 02, 2009 at 04:54:41PM +0000, Russell King - ARM Linux wrote:
On Mon, Nov 02, 2009 at 05:47:57PM +0100, Nicolas Ferre wrote:quoted
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.
... unless one of the handlers enables irqs, so all bets are off for all but the first handler.
quoted
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.
Back to the original problem: can you provide the contents of /proc/interrupts and the output of dmesg? I once saw that an oops containing the last time and location when irqs where enabled and disabled. That would be great here. I don't know off-hand where to find a patch and it doesn't seem to be supported in mainline. I will come back on this. Best regards Uwe -- Pengutronix e.K. | Uwe Kleine-K?nig | Industrial Linux Solutions | http://www.pengutronix.de/ |