[PATCH] nvmem: meson-efuse: Replacing the use of of_node_put to __free

Julia Lawall julia.lawall at inria.fr
Wed May 15 00:38:19 PDT 2024



On Tue, 14 May 2024, Marilene Andrade Garcia wrote:

> On 15/04/2024 22:17, MarileneGarcia wrote:
> > Use __free for device_node values, and thus drop calls to
> > of_node_put.
> >
> > The goal is to reduce memory management issues by using this
> > scope-based of_node_put() cleanup to simplify function exit
> > handling. When using __free a resource is allocated within a
> > block, it is automatically freed at the end of the block.
> >
> > Suggested-by: Julia Lawall <julia.lawall at inria.fr>
> > Signed-off-by: MarileneGarcia <marilene.agarcia at gmail.com>
> > ---
> >   drivers/nvmem/meson-efuse.c | 5 ++---
> >   1 file changed, 2 insertions(+), 3 deletions(-)
> >
> > diff --git a/drivers/nvmem/meson-efuse.c b/drivers/nvmem/meson-efuse.c
> > index 33678d0af2c2..400a9a075e53 100644
> > --- a/drivers/nvmem/meson-efuse.c
> > +++ b/drivers/nvmem/meson-efuse.c
> > @@ -42,20 +42,19 @@ static int meson_efuse_probe(struct platform_device
> > *pdev)
> >   {
> >   	struct device *dev = &pdev->dev;
> >   	struct meson_sm_firmware *fw;
> > -	struct device_node *sm_np;
> >   	struct nvmem_device *nvmem;
> >   	struct nvmem_config *econfig;
> >   	struct clk *clk;
> >   	unsigned int size;
> > +	struct device_node *sm_np __free(device_node) =
> > +		of_parse_phandle(pdev->dev.of_node, "secure-monitor", 0);
> >   -	sm_np = of_parse_phandle(pdev->dev.of_node, "secure-monitor", 0);

There should be a blank line after the last variable declaration, so here.

julia

> >   	if (!sm_np) {
> >   		dev_err(&pdev->dev, "no secure-monitor node\n");
> >   		return -ENODEV;
> >   	}
> >     	fw = meson_sm_get(sm_np);
> > -	of_node_put(sm_np);
> >   	if (!fw)
> >   		return -EPROBE_DEFER;
> >
>
> Hello everyone,
> Did you have a chance to look at the patch? Any questions or suggestions about
> it?
>
> Thank you,
> Marilene
>



More information about the linux-arm-kernel mailing list