Ping On Mon, Dec 9, 2019 at 12:27 PM Ramon Fried <rfried.dev@xxxxxxxxx> wrote: > > 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.