From: Marc Zyngier <maz@kernel.org>
To: Lorenzo Pieralisi <lpieralisi@kernel.org>
Cc: linux-pci@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org,
"Toan Le" <toan@os.amperecomputing.com>,
"Krzysztof Wilczyński" <kwilczynski@kernel.org>,
"Manivannan Sadhasivam" <mani@kernel.org>,
"Rob Herring" <robh@kernel.org>,
"Bjorn Helgaas" <bhelgaas@google.com>,
"Thomas Gleixner" <tglx@linutronix.de>
Subject: Re: [PATCH 12/12] PCI: xgene-msi: Restructure handler setup/teardown
Date: Mon, 07 Jul 2025 16:58:29 +0100 [thread overview]
Message-ID: <86v7o49emy.wl-maz@kernel.org> (raw)
In-Reply-To: <aGusAeAYqneyp9t3@lpieralisi>
On Mon, 07 Jul 2025 12:14:09 +0100,
Lorenzo Pieralisi <lpieralisi@kernel.org> wrote:
>
> On Sat, Jun 28, 2025 at 06:30:05PM +0100, Marc Zyngier wrote:
> > Another utterly pointless aspect of the xgene-msi driver is that
> > it is built around CPU hotplug. Which is quite amusing since this
> > is one of the few arm64 platforms that, by construction, cannot
> > do CPU hotplug in a supported way (no EL3, no PSCI, no luck).
> >
> > Drop the CPU hotplug nonsense and just setup the IRQs and handlers
> > in a less overdesigned way, grouping things more logically in the
> > process.
> >
> > Signed-off-by: Marc Zyngier <maz@kernel.org>
> > ---
> > drivers/pci/controller/pci-xgene-msi.c | 109 +++++++++----------------
> > 1 file changed, 37 insertions(+), 72 deletions(-)
> >
> > diff --git a/drivers/pci/controller/pci-xgene-msi.c b/drivers/pci/controller/pci-xgene-msi.c
> > index a22a6df7808c7..9f05c2a12da94 100644
> > --- a/drivers/pci/controller/pci-xgene-msi.c
> > +++ b/drivers/pci/controller/pci-xgene-msi.c
> > @@ -216,12 +216,6 @@ static int xgene_allocate_domains(struct device_node *node,
> > return msi->inner_domain ? 0 : -ENOMEM;
> > }
> >
> > -static void xgene_free_domains(struct xgene_msi *msi)
> > -{
> > - if (msi->inner_domain)
> > - irq_domain_remove(msi->inner_domain);
> > -}
> > -
> > static int xgene_msi_init_allocator(struct device *dev)
> > {
> > xgene_msi_ctrl->bitmap = devm_bitmap_zalloc(dev, NR_MSI_VEC, GFP_KERNEL);
> > @@ -271,26 +265,48 @@ static void xgene_msi_isr(struct irq_desc *desc)
> > chained_irq_exit(chip, desc);
> > }
> >
> > -static enum cpuhp_state pci_xgene_online;
> > -
> > static void xgene_msi_remove(struct platform_device *pdev)
> > {
> > - struct xgene_msi *msi = platform_get_drvdata(pdev);
> > -
> > - if (pci_xgene_online)
> > - cpuhp_remove_state(pci_xgene_online);
> > - cpuhp_remove_state(CPUHP_PCI_XGENE_DEAD);
>
> No question on the patch - just noticed we could remove
> CPUHP_PCI_XGENE_DEAD from cpuhp_state since it would become
> unused AFAICS.
Good point. I'll add that to the queue.
Thanks,
M.
--
Without deviation from the norm, progress is not possible.
prev parent reply other threads:[~2025-07-07 15:58 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-28 17:29 [PATCH 00/12] PCI: xgene: Fix and simplify the MSI driver Marc Zyngier
2025-06-28 17:29 ` [PATCH 01/12] genirq: Teach handle_simple_irq() to resend an in-progress interrupt Marc Zyngier
2025-07-03 16:29 ` Thomas Gleixner
2025-06-28 17:29 ` [PATCH 02/12] PCI: xgene: Defer probing if the MSI widget driver hasn't probed yet Marc Zyngier
2025-06-28 17:29 ` [PATCH 03/12] PCI: xgene: Drop useless conditional compilation Marc Zyngier
2025-06-28 17:29 ` [PATCH 04/12] PCI: xgene: Drop XGENE_PCIE_IP_VER_UNKN Marc Zyngier
2025-06-28 17:29 ` [PATCH 05/12] PCI: xgene-msi: Make per-CPU interrupt setup robust Marc Zyngier
2025-06-28 17:29 ` [PATCH 06/12] PCI: xgene-msi: Drop superfluous fields from xgene_msi structure Marc Zyngier
2025-06-28 17:30 ` [PATCH 07/12] PCI: xgene-msi: Use device-managed memory allocations Marc Zyngier
2025-06-28 17:30 ` [PATCH 08/12] PCI: xgene-msi: Get rid of intermediate tracking structure Marc Zyngier
2025-07-07 15:22 ` Lorenzo Pieralisi
2025-07-08 14:46 ` Marc Zyngier
2025-06-28 17:30 ` [PATCH 09/12] PCI: xgene-msi: Sanitise MSI allocation and affinity setting Marc Zyngier
2025-07-07 14:57 ` Lorenzo Pieralisi
2025-07-08 14:41 ` Marc Zyngier
2025-06-28 17:30 ` [PATCH 10/12] PCI: xgene-msi: Resend an MSI racing with itself on a different CPU Marc Zyngier
2025-06-28 17:30 ` [PATCH 11/12] PCI: xgene-msi: Probe as a standard platform driver Marc Zyngier
2025-06-28 17:30 ` [PATCH 12/12] PCI: xgene-msi: Restructure handler setup/teardown Marc Zyngier
2025-07-07 11:14 ` Lorenzo Pieralisi
2025-07-07 15:58 ` Marc Zyngier [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=86v7o49emy.wl-maz@kernel.org \
--to=maz@kernel.org \
--cc=bhelgaas@google.com \
--cc=kwilczynski@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=lpieralisi@kernel.org \
--cc=mani@kernel.org \
--cc=robh@kernel.org \
--cc=tglx@linutronix.de \
--cc=toan@os.amperecomputing.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).