]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/mediatek: Fix device node reference leak in mtk_dp_dt_parse()
authorMiaoqian Lin <linmq006@gmail.com>
Wed, 29 Oct 2025 07:23:06 +0000 (15:23 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 8 Jan 2026 09:14:53 +0000 (10:14 +0100)
commit a846505a193d7492ad3531e33cacfca31e4bcdd1 upstream.

The function mtk_dp_dt_parse() calls of_graph_get_endpoint_by_regs()
to get the endpoint device node, but fails to call of_node_put() to release
the reference when the function returns. This results in a device node
reference leak.

Fix this by adding the missing of_node_put() call before returning from
the function.

Found via static analysis and code review.

Fixes: f70ac097a2cf ("drm/mediatek: Add MT8195 Embedded DisplayPort driver")
Cc: stable@vger.kernel.org
Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
Reviewed-by: Markus Schneider-Pargmann <msp@baylibre.com>
Reviewed-by: CK Hu <ck.hu@mediatek.com>
Link: https://patchwork.kernel.org/project/dri-devel/patch/20251029072307.10955-1-linmq006@gmail.com/
Signed-off-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpu/drm/mediatek/mtk_dp.c

index 4979d49ae25a61c6131add2e92faf09822182348..c39b8f19c5b648c286e13645de3f24e77c0db4cc 100644 (file)
@@ -2067,6 +2067,7 @@ static int mtk_dp_dt_parse(struct mtk_dp *mtk_dp,
        endpoint = of_graph_get_endpoint_by_regs(pdev->dev.of_node, 1, -1);
        len = of_property_count_elems_of_size(endpoint,
                                              "data-lanes", sizeof(u32));
+       of_node_put(endpoint);
        if (len < 0 || len > 4 || len == 3) {
                dev_err(dev, "invalid data lane size: %d\n", len);
                return -EINVAL;