leds: led-core: Fix refcount leak in of_led_get()
[ Upstream commit da1afe8e6099980fe1e2fd7436dca284af9d3f29 ] class_find_device_by_of_node() calls class_find_device(), it will take the reference, use the put_device() to drop the reference when not need anymore. Fixes: 699a8c7c4bd3 ("leds: Add of_led_get() and led_put()") Signed-off-by: Miaoqian Lin <linmq006@gmail.com> Signed-off-by: Lee Jones <lee@kernel.org> Link: https://lore.kernel.org/r/20221220121807.1543790-1-linmq006@gmail.com Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
071b7f5720
commit
1d6101d922
@ -236,6 +236,7 @@ struct led_classdev *of_led_get(struct device_node *np, int index)
|
||||
|
||||
led_dev = class_find_device_by_of_node(leds_class, led_node);
|
||||
of_node_put(led_node);
|
||||
put_device(led_dev);
|
||||
|
||||
if (!led_dev)
|
||||
return ERR_PTR(-EPROBE_DEFER);
|
||||
|
Loading…
x
Reference in New Issue
Block a user