[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAGi-RU+GPLJ0b2K5u45KEwT=jZw565K_bxXh2OTaFR2xUmQs3Q@mail.gmail.com>
Date: Mon, 13 Jan 2020 16:59:12 +0200
From: Ramon Fried <rfried.dev@...il.com>
To: hkallweit1@...il.com, Bjorn Helgaas <bhelgaas@...gle.com>,
tglx@...utronix.de, lorenzo.pieralisi@....com, maz@...nel.org
Cc: linux-pci@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: MSI irqchip configured as IRQCHIP_ONESHOT_SAFE causes spurious IRQs
Resending with correct e-mail address of maz.
On Mon, Dec 9, 2019 at 12:27 PM Ramon Fried <rfried.dev@...il.com> 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.
Powered by blists - more mailing lists