drm/meson: Fix refcount bugs in meson_vpu_has_available_connectors()
[ Upstream commit 91b3c8dbe898df158fd2a84675f3a284ff6666f7 ]
In this function, there are two refcount leak bugs:
(1) when breaking out of for_each_endpoint_of_node(), we need call
the of_node_put() for the 'ep';
(2) we should call of_node_put() for the reference returned by
of_graph_get_remote_port() when it is not used anymore.
Fixes: bbbe775ec5
("drm: Add support for Amlogic Meson Graphic Controller")
Signed-off-by: Liang He <windhl@126.com>
Acked-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Acked-by: Neil Armstrong <narmstrong@baylibre.com>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220726010722.1319416-1-windhl@126.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:

committed by
Greg Kroah-Hartman

parent
1bfdb1912c
commit
3aa710e967
@@ -116,8 +116,11 @@ static bool meson_vpu_has_available_connectors(struct device *dev)
|
|||||||
for_each_endpoint_of_node(dev->of_node, ep) {
|
for_each_endpoint_of_node(dev->of_node, ep) {
|
||||||
/* If the endpoint node exists, consider it enabled */
|
/* If the endpoint node exists, consider it enabled */
|
||||||
remote = of_graph_get_remote_port(ep);
|
remote = of_graph_get_remote_port(ep);
|
||||||
if (remote)
|
if (remote) {
|
||||||
|
of_node_put(remote);
|
||||||
|
of_node_put(ep);
|
||||||
return true;
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
Reference in New Issue
Block a user