[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87h7pumo9l.fsf@nanos.tec.linutronix.de>
Date: Thu, 12 Nov 2020 19:19:18 +0100
From: Thomas Gleixner <tglx@...utronix.de>
To: Bjorn Helgaas <helgaas@...nel.org>
Cc: Martin Kaiser <martin@...ser.cx>,
Ley Foon Tan <ley.foon.tan@...el.com>,
Lorenzo Pieralisi <lorenzo.pieralisi@....com>,
Bjorn Helgaas <bhelgaas@...gle.com>,
rfi@...ts.rocketboards.org, linux-pci@...r.kernel.org,
linux-kernel@...r.kernel.org,
Nicolas Saenz Julienne <nsaenzjulienne@...e.de>,
Jingoo Han <jingoohan1@...il.com>,
Gustavo Pimentel <gustavo.pimentel@...opsys.com>,
Toan Le <toan@...amperecomputing.com>,
Florian Fainelli <f.fainelli@...il.com>
Subject: Re: [PATCH] PCI: altera-msi: Remove irq handler and data in one go
On Thu, Nov 12 2020 at 08:26, Bjorn Helgaas wrote:
> On Thu, Nov 12, 2020 at 02:50:42PM +0100, Thomas Gleixner wrote:
>> So I had a closer look and the reason why it only matters for the
>> chained handler case is that
>>
>> __irq_set_handler(..., is_chained = true, ...)
>>
>> starts up the interrupt immediately. So the order for this _must_ be:
>>
>> set_handler_data() -> set_handler()
>>
>> For regular interrupts it's really the mapping and allocation code which
>> does this long before the interrupt is started up. So the ordering does
>> not matter because the handler can't be reached before the full
>> setup is finished and the interrupt is actually started up.
>
> If the order truly doesn't matter here, maybe it's worth changing it
> to "set data, set handler" to avoid the need for a closer look to
> verify correctness and to make it harder to copy and paste to a place
> where it *does* matter?
Makes sense.
Powered by blists - more mailing lists