linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* MSI irqchip configured as IRQCHIP_ONESHOT_SAFE causes spurious IRQs
@ 2019-12-09 10:27 Ramon Fried
  2020-01-02  8:19 ` Ramon Fried
                   ` (2 more replies)
  0 siblings, 3 replies; 18+ messages in thread
From: Ramon Fried @ 2019-12-09 10:27 UTC (permalink / raw)
  To: hkallweit1, bhelgaas, marc.zyngier, tglx, lorenzo.pieralisi
  Cc: linux-pci, linux-kernel

Hi,
While debugging the root cause of spurious IRQ's on my PCIe MSI line it appears
that because of the line:
    info->chip->flags |= IRQCHIP_ONESHOT_SAFE;
in pci_msi_create_irq_domain()
The IRQF_ONESHOT is ignored, especially when requesting IRQ through
pci_request_threaded_irq() where handler is NULL.

The problem is that the MSI masking now only surrounds the HW handler,
and all additional MSI that occur before the threaded handler is
complete are considered by the note_interrupt() as spurious.

Besides the side effect of that, I don't really understand the logic
of not masking the MSI until the threaded handler is complete,
especially when there's no HW handler and only threaded handler.

Your thoughts?

Thank,
Ramon.

^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2020-01-20  8:02 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-12-09 10:27 MSI irqchip configured as IRQCHIP_ONESHOT_SAFE causes spurious IRQs Ramon Fried
2020-01-02  8:19 ` Ramon Fried
2020-01-13 14:59 ` Ramon Fried
2020-01-14 12:15 ` Thomas Gleixner
2020-01-14 21:38   ` Ramon Fried
2020-01-14 21:40     ` Ramon Fried
2020-01-14 22:54       ` Thomas Gleixner
2020-01-16  0:19         ` Ramon Fried
2020-01-16  1:39           ` Thomas Gleixner
2020-01-16  7:58             ` Ramon Fried
2020-01-16  9:32               ` Thomas Gleixner
2020-01-17 13:32                 ` Ramon Fried
2020-01-17 14:38                   ` Thomas Gleixner
2020-01-17 15:43                     ` Ramon Fried
2020-01-17 17:11                       ` Thomas Gleixner
2020-01-17 20:01                         ` Ramon Fried
2020-01-17 22:47                           ` Thomas Gleixner
2020-01-20  8:02                             ` Ramon Fried

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).