[PATCH -rt] powerpc update
Ingo Molnar
mingo at elte.hu
Wed Oct 18 17:32:34 EST 2006
* Ingo Molnar <mingo at elte.hu> wrote:
> really, the ->eoi() op should only be called for true fasteoi cases.
> What we want here is to turn the fasteoi handler into a handler that
> does mask+ack and then unmask. Not 'mask+eoi ... unmask' as your patch
> does.
i.e. like the much simpler patch below. That's what i've applied to the
soon-to-be-rt6 tree, plus the other bits of your patch. Can you confirm
this works well on PPC?
Ingo
Index: linux-rt.q/kernel/irq/chip.c
===================================================================
--- linux-rt.q.orig/kernel/irq/chip.c
+++ linux-rt.q/kernel/irq/chip.c
@@ -386,13 +386,15 @@ handle_fasteoi_irq(unsigned int irq, str
}
desc->status |= IRQ_INPROGRESS;
+
/*
- * fasteoi should not be used for threaded IRQ handlers!
+ * In the threaded case we fall back to a mask+ack sequence:
*/
if (redirect_hardirq(desc)) {
- WARN_ON_ONCE(1);
+ mask_ack_irq(desc, irq);
goto out_unlock;
}
+
desc->status &= ~IRQ_PENDING;
spin_unlock(&desc->lock);
More information about the Linuxppc-dev
mailing list