Re: [RFC trollpatch 1/1] genirq: Remove the fits all and nothing__do_IRQ() code

From: Tony Luck
Date: Mon Sep 27 2010 - 13:36:20 EST


On Wed, Sep 8, 2010 at 11:14 AM, Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote:
>  The following architectures are still using __do_IRQ():
>
>  alpha, cris, ia64, h8300, m32r, m68knommu, parisc, um

Thomas,

I (belatedly) took a look at fixing ia64 ... but I've run into a small snag.
The __do_IRQ() routine makes a call to:

desc->chip->end(irq);

while neither of the "handle_level_irq()" nor "handle_edge_irq()"
functions do this.

On ia64 iosapic_end_level_irq() call iosapic_eoi() for me. Without it
my system hangs during boot (with some driver timeout complaining
about dropped interrupts).

Is the omission of desc->chip->end(irq); deliberate? In which case
I need to find another place to call iosapic_eoi(). Or is it accidental?

Thanks

-Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-alpha" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html