gpio/rockchip: fix refcount leak in rockchip_gpiolib_register()
authorWang Yufen <wangyufen@huawei.com>
Mon, 5 Dec 2022 06:19:56 +0000 (14:19 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 14 Dec 2022 10:37:27 +0000 (11:37 +0100)
[ Upstream commit 63ff545af73f759d1bd04198af8ed8577fb739fc ]

The node returned by of_get_parent() with refcount incremented,
of_node_put() needs be called when finish using it. So add it in the
end of of_pinctrl_get().

Fixes: 936ee2675eee ("gpio/rockchip: add driver for rockchip gpio")
Signed-off-by: Wang Yufen <wangyufen@huawei.com>
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpio/gpio-rockchip.c

index d32928c..a197f69 100644 (file)
@@ -605,6 +605,7 @@ static int rockchip_gpiolib_register(struct rockchip_pin_bank *bank)
                        return -ENODATA;
 
                pctldev = of_pinctrl_get(pctlnp);
+               of_node_put(pctlnp);
                if (!pctldev)
                        return -ENODEV;