[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5100171ff6d4c3efffe008e1e0bf3707@kernel.org>
Date: Wed, 25 Nov 2020 14:54:21 +0000
From: Marc Zyngier <maz@...nel.org>
To: Laurent Vivier <lvivier@...hat.com>
Cc: Thomas Gleixner <tglx@...utronix.de>, linux-kernel@...r.kernel.org,
linux-block@...r.kernel.org, Paul Mackerras <paulus@...ba.org>,
linux-pci@...r.kernel.org, linuxppc-dev@...ts.ozlabs.org,
Benjamin Herrenschmidt <benh@...nel.crashing.org>,
"Michael S . Tsirkin" <mst@...hat.com>, Greg Kurz <groug@...d.org>,
Christoph Hellwig <hch@....de>,
Michael Ellerman <mpe@...erman.id.au>
Subject: Re: [PATCH v2 1/2] genirq: add an irq_create_mapping_affinity()
function
On 2020-11-25 14:09, Laurent Vivier wrote:
> On 25/11/2020 14:20, Thomas Gleixner wrote:
>> Laurent,
>>
>> On Wed, Nov 25 2020 at 12:16, Laurent Vivier wrote:
>>
>> The proper subsystem prefix is: 'genirq/irqdomain:' and the first
>> letter
>> after the colon wants to be uppercase.
>
> Ok.
>
>>> This function adds an affinity parameter to irq_create_mapping().
>>> This parameter is needed to pass it to irq_domain_alloc_descs().
>>
>> A changelog has to explain the WHY. 'The parameter is needed' is not
>> really useful information.
>>
>
> The reason of this change is explained in PATCH 2.
>
> I have two patches, one to change the interface with no functional
> change (PATCH 1) and
> one to fix the problem (PATCH 2). Moreover they don't cover the same
> subsystems.
>
> I can either:
> - merge the two patches
> - or make a reference in the changelog of PATCH 1 to PATCH 2
> (something like "(see folowing patch "powerpc/pseries: pass MSI
> affinity to
> irq_create_mapping()")")
> - or copy some information from PATCH 2
> (something like "this parameter is needed by rtas_setup_msi_irqs()
> to pass the affinity
> to irq_domain_alloc_descs() to fix multiqueue affinity")
>
> What do you prefer?
How about something like this for the first patch:
"There is currently no way to convey the affinity of an interrupt
via irq_create_mapping(), which creates issues for devices that
expect that affinity to be managed by the kernel.
In order to sort this out, rename irq_create_mapping() to
irq_create_mapping_affinity() with an additional affinity parameter
that can conveniently passed down to irq_domain_alloc_descs().
irq_create_mapping() is then re-implemented as a wrapper around
irq_create_mapping_affinity()."
Thanks,
M.
--
Jazz is not dead. It just smells funny...
Powered by blists - more mailing lists