Re: [PATCH] 2.6.18-rt7: PowerPC: fix breakage in threaded fasteoi type IRQ handlers

Sergei Shtylyov
2006-11-20T19:23:23Z

Hello.

Sergei Shtylyov wrote:

>>>> Hmm, that just won't do for PPC threaded fasteoi flows! What you'll
>>>>get is a threaded IRQ with EOI *never ever* issued, unless my PPC
>>>>patch is also in...

>>>ok, how about the patch below in addition?

>>or rather, the one below. Untested.

> Actually, it's been tested since it's close to Daniel's original variant.
> Should do it.

Can't say that about the interrupt controllers without mask() method --
that *really* needs testing...

>>Index: linux/kernel/irq/chip.c
>>===================================================================
>>--- linux.orig/kernel/irq/chip.c
>>+++ linux/kernel/irq/chip.c
>>@@ -392,11 +394,12 @@ handle_fasteoi_irq(unsigned int irq, str
>> desc->status |= IRQ_INPROGRESS;
>>
>> /*
>>- * In the threaded case we fall back to a mask+ack sequence:
>>+ * In the threaded case we fall back to a mask+eoi sequence:
>> */
>> if (redirect_hardirq(desc)) {
>>- mask_ack_irq(desc, irq);
>>- goto out_unlock;

That label would generate a warning though. Should be gotten rid of now.

>>+ if (desc->chip->mask)
>>+ desc->chip->mask(irq);
>>+ goto out;
>> }
>>
>> desc->status &= ~IRQ_PENDING;
>>
>>

WBR, Sergei