[PATCH] drm/mediatek: Fix device node reference leak in mtk_dp_dt_parse()
CK Hu (胡俊光)
ck.hu at mediatek.com
Tue Nov 18 22:02:35 PST 2025
On Wed, 2025-10-29 at 15:23 +0800, Miaoqian Lin wrote:
> External email : Please do not click links or open attachments until you have verified the sender or the content.
>
>
> 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.
Reviewed-by: CK Hu <ck.hu at mediatek.com>
>
> Fixes: f70ac097a2cf ("drm/mediatek: Add MT8195 Embedded DisplayPort driver")
> Cc: stable at vger.kernel.org
> Signed-off-by: Miaoqian Lin <linmq006 at gmail.com>
> ---
> drivers/gpu/drm/mediatek/mtk_dp.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/gpu/drm/mediatek/mtk_dp.c b/drivers/gpu/drm/mediatek/mtk_dp.c
> index bef6eeb30d3e..b0b1e158600f 100644
> --- a/drivers/gpu/drm/mediatek/mtk_dp.c
> +++ b/drivers/gpu/drm/mediatek/mtk_dp.c
> @@ -2087,6 +2087,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;
> --
> 2.39.5 (Apple Git-154)
>
More information about the Linux-mediatek
mailing list