Re: 2.6.16-rt10 crash on ppc

From: Ingo Molnar
Date: Thu Mar 30 2006 - 02:23:15 EST



* Kumar Gala <galak@xxxxxxxxxxxxxxxxxxx> wrote:

> The issue me actually be a driver interrupt locking bug. The driver
> supports three distinct interrupts for TX, RX, Error. I asked Emin to
> try changing the driver to use SA_INTERRUPT in the request_irq() to
> see what happens. I believe that when he did that it worked but hurts
> performance.

this is the -rt kernel, with PREEMPT_RT enabled, so SA_INTERRUPT should
make no difference. All interrupts are executed by their interrupt
thread, and are fully preemptible:

fastcall int handle_IRQ_event(unsigned int irq, struct pt_regs *regs,
struct irqaction *action)
{
int ret, retval = 0, status = 0;

/*
* Unconditionally enable interrupts for threaded
* IRQ handlers:
*/
if (!hardirq_count() || !(action->flags & SA_INTERRUPT))
local_irq_enable();

i.e. SA_INTERRUPT should have no effect.

Ingo
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/