drivers/staging/board/board.c | 2 ++ 1 file changed, 2 insertions(+)
In board_staging_gic_setup_xlate(), of_find_compatible_node() return
a node pointer with refcount incremented. We should use of_node_put()
when it is not used anymore.
Signed-off-by: Liang He <windhl@126.com>
---
drivers/staging/board/board.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/staging/board/board.c b/drivers/staging/board/board.c
index f980af037345..408448c202a2 100644
--- a/drivers/staging/board/board.c
+++ b/drivers/staging/board/board.c
@@ -67,6 +67,8 @@ int __init board_staging_gic_setup_xlate(const char *gic_match,
if (!irqc_node)
return -ENOENT;
+ of_node_put(irqc_node);
+
irqc_base = base;
return 0;
}
--
2.25.1
Hi Liang,
On Wed, Jun 15, 2022 at 4:21 PM Liang He <windhl@126.com> wrote:
> In board_staging_gic_setup_xlate(), of_find_compatible_node() return
> a node pointer with refcount incremented. We should use of_node_put()
> when it is not used anymore.
>
> Signed-off-by: Liang He <windhl@126.com>
Thanks for your patch!
> --- a/drivers/staging/board/board.c
> +++ b/drivers/staging/board/board.c
> @@ -67,6 +67,8 @@ int __init board_staging_gic_setup_xlate(const char *gic_match,
> if (!irqc_node)
> return -ENOENT;
>
> + of_node_put(irqc_node);
> +
> irqc_base = base;
> return 0;
> }
irqc_node is a global variable, and it is used after this function
has returned.
NAKed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
© 2016 - 2026 Red Hat, Inc.