Re: Legacy PCI interrupt support in PCIe host driver
From: Thomas Gleixner
Date: Thu Mar 16 2017 - 13:48:49 EST
On Thu, 16 Mar 2017, Mason wrote:
> About shared ISRs. Are they supposed to return IRQ_HANDLED
> if and only if they handled something?
Every interrupt handler is supposed to return IRQ_NONE if it did not handle
it. That does not depend on shared or not. The handler does not know if
it's on a shared interrupt line or not. IRQF_SHARED only tells, that the
handler is capable of sharing the interrupt line with another device.
> Will that stop the next ISR from being called?
No.
> I guess if two interrupts fire at the same time, we'll just take two
> separate exceptions?
Wrong guess. That might work with level interupts, but with other types
nothing will raise another exception. Sharing interrupts on edge types is a
stupid idea, but hardware folks insist on implementing stupid ideas.
Thanks,
tglx