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

From: Benjamin Herrenschmidt <[email-masked]>
Date: Mon, 20 Nov 2006 07:36:10 +1100

On Sun, 2006-11-19 at 23:31 +0300, Sergei Shtylyov wrote:

>    The fasteoi flow seem to only had been used for x86 IOAPIC in the RT patch 
> only *before* PPC took to using them in the mainline...

I don't think so, I asked for the fasteoi to be created while porting
ppc to genirq :-)

> > threaded handlers need a mask() + an ack(), because that's the correct
> 
>     Not all of them. This could be customized on type-by-type basis. I.e. we 
> could call eoi() instead of ack() for fasteoi chips without having to resort 
> to the duplicated ack/eoi handlers.

I still don't see how ack() makes sense in the context of a fasteoi...
You can either just not EOI until it's handled, but you'll indeed
introduce delays for other interrupts of the same priority or lower, or
you can mask() and then eoi(), which is, I think, what Apple does, to
deliver the interrupt to a thread (and later unmask).

In any case, I don't see the need for a separate ack().

Ben.