2022-12-18 14:30:21

by Martin Kaiser

[permalink] [raw]
Subject: [PATCH 1/2] ARM: highbank: add missing of_node_put call

A node that is returned by of_find_compatible_node has its refcount
incremented. We have to call of_node_put when the node is no longer
needed.

Add a missing of_node_put call in function highbank_init.

Signed-off-by: Martin Kaiser <[email protected]>
---
arch/arm/mach-highbank/highbank.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-highbank/highbank.c b/arch/arm/mach-highbank/highbank.c
index 5d4f977ac7d2..97ccb8c1b3cd 100644
--- a/arch/arm/mach-highbank/highbank.c
+++ b/arch/arm/mach-highbank/highbank.c
@@ -141,6 +141,7 @@ static void __init highbank_init(void)
/* Map system registers */
np = of_find_compatible_node(NULL, NULL, "calxeda,hb-sregs");
sregs_base = of_iomap(np, 0);
+ of_node_put(np);
WARN_ON(!sregs_base);

pm_power_off = highbank_power_off;
--
2.30.2


2022-12-20 14:27:00

by Andre Przywara

[permalink] [raw]
Subject: Re: [PATCH 1/2] ARM: highbank: add missing of_node_put call

On Sun, 18 Dec 2022 15:26:46 +0100
Martin Kaiser <[email protected]> wrote:

Hi Martin,

> A node that is returned by of_find_compatible_node has its refcount
> incremented. We have to call of_node_put when the node is no longer
> needed.
>
> Add a missing of_node_put call in function highbank_init.

Thanks for the patch.
So Ruyi sent the exact same one earlier this year already:
https://lore.kernel.org/linux-arm-kernel/[email protected]/

I asked Arnd and Olof to take it back then (see my reply), but this somehow
got lost.

I will try to push on both Ruyi's and your second patch again - but I
guess only after the holidays.

Cheers,
Andre

> Signed-off-by: Martin Kaiser <[email protected]>
> ---
> arch/arm/mach-highbank/highbank.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/arm/mach-highbank/highbank.c b/arch/arm/mach-highbank/highbank.c
> index 5d4f977ac7d2..97ccb8c1b3cd 100644
> --- a/arch/arm/mach-highbank/highbank.c
> +++ b/arch/arm/mach-highbank/highbank.c
> @@ -141,6 +141,7 @@ static void __init highbank_init(void)
> /* Map system registers */
> np = of_find_compatible_node(NULL, NULL, "calxeda,hb-sregs");
> sregs_base = of_iomap(np, 0);
> + of_node_put(np);
> WARN_ON(!sregs_base);
>
> pm_power_off = highbank_power_off;