[PATCH] leds: netxbig: Fix refcount leak in netxbig_leds_get_of_pdata

From: Miaoqian Lin
Date: Thu May 12 2022 - 01:03:06 EST


of_parse_phandle() returns a node pointer with refcount
incremented, we should use of_node_put() on it when not needed anymore.
When of_find_device_by_node() fails, of_node_put() is missing.

Fixes: 9af512e81964 ("leds: netxbig: Convert to use GPIO descriptors")
Signed-off-by: Miaoqian Lin <linmq006@xxxxxxxxx>
---
drivers/leds/leds-netxbig.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/leds/leds-netxbig.c b/drivers/leds/leds-netxbig.c
index 77213b79f84d..ceb046500469 100644
--- a/drivers/leds/leds-netxbig.c
+++ b/drivers/leds/leds-netxbig.c
@@ -441,6 +441,7 @@ static int netxbig_leds_get_of_pdata(struct device *dev,
gpio_ext_pdev = of_find_device_by_node(gpio_ext_np);
if (!gpio_ext_pdev) {
dev_err(dev, "Failed to find platform device for gpio-ext\n");
+ of_node_put(gpio_ext_np);
return -ENODEV;
}
gpio_ext_dev = &gpio_ext_pdev->dev;
--
2.25.1