projects
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
1cdf973
)
leds: led-core: Fix refcount leak in of_led_get()
author
Miaoqian Lin
<linmq006@gmail.com>
Tue, 20 Dec 2022 12:18:07 +0000
(16:18 +0400)
committer
Greg Kroah-Hartman
<gregkh@linuxfoundation.org>
Fri, 10 Mar 2023 08:39:32 +0000
(09:39 +0100)
[ 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>
drivers/leds/led-class.c
patch
|
blob
|
history
diff --git
a/drivers/leds/led-class.c
b/drivers/leds/led-class.c
index 6e88df4c87fa81b87051143aed2e3ba1c154a9c3..1024b1562aafc85a4c9867d49d10cf1bb8670179 100644
(file)
--- a/
drivers/leds/led-class.c
+++ b/
drivers/leds/led-class.c
@@
-235,6
+235,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);