[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <878qpg4o4t.ffs@tglx>
Date: Fri, 07 Mar 2025 20:49:38 +0100
From: Thomas Gleixner <tglx@...utronix.de>
To: Tsai Sung-Fu <danielsftsai@...gle.com>
Cc: Jingoo Han <jingoohan1@...il.com>, Manivannan Sadhasivam
<manivannan.sadhasivam@...aro.org>, Lorenzo Pieralisi
<lpieralisi@...nel.org>, Krzysztof WilczyĆski
<kw@...ux.com>, Rob Herring
<robh@...nel.org>, Bjorn Helgaas <bhelgaas@...gle.com>, Andrew Chant
<achant@...gle.com>, Brian Norris <briannorris@...gle.com>, Sajid Dalvi
<sdalvi@...gle.com>, Mark Cheng <markcheng@...gle.com>, Ben Cheng
<bccheng@...gle.com>, linux-pci@...r.kernel.org,
linux-kernel@...r.kernel.org, Marc Zyngier <maz@...nel.org>
Subject: Re: [PATCH] PCI: dwc: Chain the set IRQ affinity request back to
the parent
On Fri, Mar 07 2025 at 19:10, Tsai Sung-Fu wrote:
> Thanks for your detailed explanation and feedback, I am a bit confused about the
> #4 you mentioned here ->
>
>> 4) Affinity of the demultiplex interrupt
>
> Are you saying there is a chance to queue this demultiplexing IRQ event
> to the current running CPU ?
The demultiplexing interrupt (currently a chained handler, which is
hidden from /proc/irq/) stays at the affinity which the kernel decided
to assign to it at startup. That means it can't be steered to a
particual CPU and nobody knows to which CPU it is affine. You can only
guess it from /proc/interrupts by observing where the associated
demultiplex interrupts are affine to.
So ideally you want to be able to affine the demultiplexing interrupt
too. That requires to switch it to a regular interrupt for
simplicity. We could expose those hidden chained handlers affinity too,
but that needs some surgery vs. locking etc.
> And that's really an approach worth to try, I will work on it.
I've played with this on top of variant of Marc's changes to use MSI
parent interrupts for such controllers too:
https://lore.kernel.org/all/20241204124549.607054-1-maz@kernel.org/
A completely untested and largely uncompiled preview is here:
https://tglx.de/~tglx/patches.tar
The MSI parent parts are in flux. Marc will look at them in the next
weeks, but I picked them up because it simplifies the whole business a
lot. If you find bugs in that series, you can keep them :)
Thanks,
tglx
Powered by blists - more mailing lists