We should call of_node_put() for the reference 'gparent' escaped
out of the for_each_child_of_node() as it has increased the refcount.

Fixes: 5b9ca526917b ("[PATCH] 3/5 powerpc: Add platform functions interpreter")
Signed-off-by: Liang He <win...@126.com>
---
 arch/powerpc/platforms/powermac/pfunc_base.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/powerpc/platforms/powermac/pfunc_base.c 
b/arch/powerpc/platforms/powermac/pfunc_base.c
index 9c2947a3edd5..085e0ad20eba 100644
--- a/arch/powerpc/platforms/powermac/pfunc_base.c
+++ b/arch/powerpc/platforms/powermac/pfunc_base.c
@@ -136,6 +136,8 @@ static void __init macio_gpio_init_one(struct macio_chip 
*macio)
        for_each_child_of_node(gparent, gp)
                pmf_do_functions(gp, NULL, 0, PMF_FLAGS_ON_INIT, NULL);
 
+       of_node_put(gparent);
+
        /* Note: We do not at this point implement the "at sleep" or "at wake"
         * functions. I yet to find any for GPIOs anyway
         */
-- 
2.25.1

Reply via email to