On 02/07/2024 17:01, Abhinav Jain wrote: > Remove of_node_put for device node prg_node. > > Suggested-by: Julia Lawall <julia.lawall@xxxxxxxx> > Signed-off-by: Abhinav Jain <jain.abhinav177@xxxxxxxxx> > --- > drivers/gpu/ipu-v3/ipu-prg.c | 7 ++----- > 1 file changed, 2 insertions(+), 5 deletions(-) > > diff --git a/drivers/gpu/ipu-v3/ipu-prg.c b/drivers/gpu/ipu-v3/ipu-prg.c > index 729605709955..d1f46bc761ec 100644 > --- a/drivers/gpu/ipu-v3/ipu-prg.c > +++ b/drivers/gpu/ipu-v3/ipu-prg.c > @@ -84,8 +84,8 @@ static LIST_HEAD(ipu_prg_list); > struct ipu_prg * > ipu_prg_lookup_by_phandle(struct device *dev, const char *name, int ipu_id) > { > - struct device_node *prg_node = of_parse_phandle(dev->of_node, > - name, 0); > + struct device_node *prg_node __free(device_node) = > + of_parse_phandle(dev->of_node, name, 0); > struct ipu_prg *prg; > > mutex_lock(&ipu_prg_list_mutex); > @@ -95,14 +95,11 @@ ipu_prg_lookup_by_phandle(struct device *dev, const char *name, int ipu_id) > device_link_add(dev, prg->dev, > DL_FLAG_AUTOREMOVE_CONSUMER); > prg->id = ipu_id; > - of_node_put(prg_node); > return prg; > } > } > mutex_unlock(&ipu_prg_list_mutex); > > - of_node_put(prg_node); > - > return NULL; > } > Hi Abhinav, Apart form having sent two different patches with the same title (hence the confusion), this cleanup is right from a functional point of view. On the other hand, the description should address why you are doing this cleanup (e.g. to remove the need for explicit of_node_put() when the variable goes out of scope). The need for of_node_put() does no vanish, it is only automated and no longer visible at first glance by means of the cleanup attribute. Best regards, Javier Carrasco