Add cleanup attribute for device node prg_node.
Remove of_node_put for device node prg_node as it is unnecessary now.

Suggested-by: Julia Lawall <julia.law...@inria.fr>
Signed-off-by: Abhinav Jain <jain.abhinav...@gmail.com>
---
- PATCH v1:
https://lore.kernel.org/all/20240702150109.1002065-1-jain.abhinav...@gmail.com/

- Changes since v1:
  Enhanced the commit description to better suit the work being done
  as per the feedback in v1
---
 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;
 }
 
-- 
2.34.1

Reply via email to