From: Lorenzo Pieralisi <lpieralisi@kernel.org>
To: Frank Li <Frank.li@nxp.com>
Cc: linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org,
linux-pci@vger.kernel.org, "Rob Herring" <robh@kernel.org>,
"Sascha Bischoff" <sascha.bischoff@arm.com>,
"Scott Branden" <sbranden@broadcom.com>,
"Thomas Gleixner" <tglx@linutronix.de>,
"Bjorn Helgaas" <bhelgaas@google.com>,
"Ray Jui" <rjui@broadcom.com>,
"Manivannan Sadhasivam" <mani@kernel.org>,
"Krzysztof Wilczyński" <kwilczynski@kernel.org>,
"Marc Zyngier" <maz@kernel.org>
Subject: Re: [PATCH v2 2/4] of/irq: Fix OF node refcount in of_msi_get_domain()
Date: Wed, 15 Oct 2025 10:03:44 +0200 [thread overview]
Message-ID: <aO9VYGkCq7MDCcNn@lpieralisi> (raw)
In-Reply-To: <aO7Mx11tWFbDX8u1@lizhi-Precision-Tower-5810>
On Tue, Oct 14, 2025 at 06:20:55PM -0400, Frank Li wrote:
> On Tue, Oct 14, 2025 at 11:58:43AM +0200, Lorenzo Pieralisi wrote:
> > In of_msi_get_domain() if the iterator loop stops early because an
> > irq_domain match is detected, an of_node_put() on the iterator node is
> > needed to keep the OF node refcount in sync.
> >
> > Add it.
> >
> > Signed-off-by: Lorenzo Pieralisi <lpieralisi@kernel.org>
> > Cc: Rob Herring <robh@kernel.org>
> > ---
>
> Reviewed-by: Frank Li <Frank.Li@nxp.com>
>
> After go though of_for_each_phandle, I understand why need of_node_put()
> at break branch.
>
> It will be nice if add of_for_each_phandle_scoped() help macro.
Yes because this fix is not the end of it AFAICS.
Please review and test patch (4) as well since I slightly change
the existing logic there, I don't want to break the EP mapping code you
added in f1680d9081e1 (by the way, I don't get that commit logic, if the
msi-parent loop would match it could just return and we could have
removed the
if (ret)
guarding of_map_id(), correct ?).
That's what I did in patch (4), please have a look.
Thanks,
Lorenzo
>
>
> > drivers/of/irq.c | 4 +++-
> > 1 file changed, 3 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/of/irq.c b/drivers/of/irq.c
> > index e67b2041e73b..9f6cd5abba76 100644
> > --- a/drivers/of/irq.c
> > +++ b/drivers/of/irq.c
> > @@ -773,8 +773,10 @@ struct irq_domain *of_msi_get_domain(struct device *dev,
> >
> > of_for_each_phandle(&it, err, np, "msi-parent", "#msi-cells", 0) {
> > d = irq_find_matching_host(it.node, token);
> > - if (d)
> > + if (d) {
> > + of_node_put(it.node);
> > return d;
> > + }
> > }
> >
> > return NULL;
> > --
> > 2.50.1
> >
next prev parent reply other threads:[~2025-10-15 8:03 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-10-14 9:58 [PATCH v2 0/4] of/irq: Misc msi-parent handling fixes/clean-ups Lorenzo Pieralisi
2025-10-14 9:58 ` [PATCH v2 1/4] of/irq: Add msi-parent check to of_msi_xlate() Lorenzo Pieralisi
2025-10-14 22:29 ` Bjorn Helgaas
2025-10-15 7:38 ` Lorenzo Pieralisi
2025-10-14 9:58 ` [PATCH v2 2/4] of/irq: Fix OF node refcount in of_msi_get_domain() Lorenzo Pieralisi
2025-10-14 22:20 ` Frank Li
2025-10-15 8:03 ` Lorenzo Pieralisi [this message]
2025-10-15 16:01 ` Frank Li
2025-10-14 9:58 ` [PATCH v2 3/4] PCI: iproc: Implement MSI controller node detection with of_msi_xlate() Lorenzo Pieralisi
2025-10-15 7:40 ` Lorenzo Pieralisi
2025-10-14 9:58 ` [PATCH v2 4/4] irqchip/gic-its: Rework platform MSI deviceID detection Lorenzo Pieralisi
2025-10-14 17:12 ` Marc Zyngier
2025-10-15 7:46 ` Lorenzo Pieralisi
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=aO9VYGkCq7MDCcNn@lpieralisi \
--to=lpieralisi@kernel.org \
--cc=Frank.li@nxp.com \
--cc=bhelgaas@google.com \
--cc=devicetree@vger.kernel.org \
--cc=kwilczynski@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=mani@kernel.org \
--cc=maz@kernel.org \
--cc=rjui@broadcom.com \
--cc=robh@kernel.org \
--cc=sascha.bischoff@arm.com \
--cc=sbranden@broadcom.com \
--cc=tglx@linutronix.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.