[PATCH] PCI: iproc: Use __free(device_node) in iproc_pcie_msi_enable()
Fuad Tabba
fuad.tabba at linux.dev
Wed Sep 23 11:08:36 PDT 2026
Hi Jonathan,
On Wed, 23 Sept 2026 at 17:34, Jonathan Cameron
<jonathan.cameron at oss.qualcomm.com> wrote:
[...]
> Hi Fuad,
>
> See the guidance notes in cleanup.h. Linus has stated a couple
> of times that he really never wants to see = NULL pattern miles
> from where it is allocated. Best you can do here is shift
> it down to immediately before of_msi_xlate(). It is fine to declare
> variables with destructors like this inline (i.e. not at top of function).
>
> Admittedly if the scope shown here had gone a few lines further this
> would look less bad!
Done: https://lore.kernel.org/all/20260923180703.3901185-1-fuad.tabba@linux.dev/
Cheers,
/fuad
>
>
> > ---
> > drivers/pci/controller/pcie-iproc.c | 10 +++-------
> > 1 file changed, 3 insertions(+), 7 deletions(-)
> >
> > diff --git a/drivers/pci/controller/pcie-iproc.c b/drivers/pci/controller/pcie-iproc.c
> > index afb3aa38ac6bb..b4f4e6e1d4b41 100644
> > --- a/drivers/pci/controller/pcie-iproc.c
> > +++ b/drivers/pci/controller/pcie-iproc.c
> > @@ -1338,7 +1338,7 @@ static int iproc_pcie_msi_steer(struct iproc_pcie *pcie,
> >
> > static int iproc_pcie_msi_enable(struct iproc_pcie *pcie)
> > {
> > - struct device_node *msi_node = NULL;
> > + struct device_node *msi_node __free(device_node) = NULL;
> > int ret;
> >
> > /*
> > @@ -1357,18 +1357,14 @@ static int iproc_pcie_msi_enable(struct iproc_pcie *pcie)
> > if (pcie->need_msi_steer) {
> > ret = iproc_pcie_msi_steer(pcie, msi_node);
> > if (ret)
> > - goto out_put_node;
> > + return ret;
> > }
> >
> > /*
> > * If another MSI controller is being used, the call below should fail
> > * but that is okay
> > */
> > - ret = iproc_msi_init(pcie, msi_node);
> > -
> > -out_put_node:
> > - of_node_put(msi_node);
> > - return ret;
> > + return iproc_msi_init(pcie, msi_node);
> > }
> >
> > static void iproc_pcie_msi_disable(struct iproc_pcie *pcie)
> >
> > base-commit: fd73f4a6659897191fa0d40695fe370925dd3780
>
More information about the linux-arm-kernel
mailing list