drivers/soc/mediatek/mtk-svs.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-)
From: Markus Elfring <elfring@users.sourceforge.net>
Date: Tue, 24 Sep 2024 20:00:09 +0200
An of_node_put(np) call was immediately used after a pointer check
for a of_find_device_by_node() call in this function implementation.
Thus call such a function only once instead directly before the check.
This issue was transformed by using the Coccinelle software.
Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
---
drivers/soc/mediatek/mtk-svs.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/drivers/soc/mediatek/mtk-svs.c b/drivers/soc/mediatek/mtk-svs.c
index 9a91298c1253..7c349a94b45c 100644
--- a/drivers/soc/mediatek/mtk-svs.c
+++ b/drivers/soc/mediatek/mtk-svs.c
@@ -2133,14 +2133,12 @@ static struct device *svs_get_subsys_device(struct svs_platform *svsp,
}
pdev = of_find_device_by_node(np);
+ of_node_put(np);
if (!pdev) {
- of_node_put(np);
dev_err(svsp->dev, "cannot find pdev by %s\n", node_name);
return ERR_PTR(-ENXIO);
}
- of_node_put(np);
-
return &pdev->dev;
}
--
2.46.1
On Tue, 24 Sep 2024 20:08:15 +0200, Markus Elfring wrote:
> An of_node_put(np) call was immediately used after a pointer check
> for a of_find_device_by_node() call in this function implementation.
> Thus call such a function only once instead directly before the check.
>
> This issue was transformed by using the Coccinelle software.
>
>
> [...]
Applied to v6.12-next/soc, thanks!
[1/1] soc: mediatek: mtk-svs: Call of_node_put(np) only once in svs_get_subsys_device()
https://git.kernel.org/mediatek/c/1ee71494
Cheers,
Angelo
Il 24/09/24 20:08, Markus Elfring ha scritto:
> From: Markus Elfring <elfring@users.sourceforge.net>
> Date: Tue, 24 Sep 2024 20:00:09 +0200
>
> An of_node_put(np) call was immediately used after a pointer check
> for a of_find_device_by_node() call in this function implementation.
> Thus call such a function only once instead directly before the check.
>
> This issue was transformed by using the Coccinelle software.
>
> Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
> ---
> drivers/soc/mediatek/mtk-svs.c | 4 +---
> 1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/drivers/soc/mediatek/mtk-svs.c b/drivers/soc/mediatek/mtk-svs.c
> index 9a91298c1253..7c349a94b45c 100644
> --- a/drivers/soc/mediatek/mtk-svs.c
> +++ b/drivers/soc/mediatek/mtk-svs.c
> @@ -2133,14 +2133,12 @@ static struct device *svs_get_subsys_device(struct svs_platform *svsp,
> }
>
> pdev = of_find_device_by_node(np);
> + of_node_put(np);
> if (!pdev) {
> - of_node_put(np);
> dev_err(svsp->dev, "cannot find pdev by %s\n", node_name);
> return ERR_PTR(-ENXIO);
> }
>
> - of_node_put(np);
> -
> return &pdev->dev;
> }
>
> --
> 2.46.1
>
© 2016 - 2026 Red Hat, Inc.