From 2e8b843aa1b93fd34db020c629d81c720da58f17 Mon Sep 17 00:00:00 2001 From: Chen Ni Date: Tue, 7 May 2024 04:08:31 +0000 Subject: [PATCH] drm/tegra: dsi: Add missing check for of_find_device_by_node stable inclusion from stable-v5.10.214 commit 92003981a6df5dc84af8a5904f8ee112fa324129 category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/I9L9OA CVE: CVE-2023-52650 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=92003981a6df5dc84af8a5904f8ee112fa324129 -------------------------------- [ Upstream commit afe6fcb9775882230cd29b529203eabd5d2a638d ] Add check for the return value of of_find_device_by_node() and return the error if it fails in order to avoid NULL pointer dereference. Fixes: e94236cde4d5 ("drm/tegra: dsi: Add ganged mode support") Signed-off-by: Chen Ni Signed-off-by: Thierry Reding Link: https://patchwork.freedesktop.org/patch/msgid/20231024080738.825553-1-nichen@iscas.ac.cn Signed-off-by: Sasha Levin Signed-off-by: Yuntao Liu (cherry picked from commit 925c1ab258f8d797a3ff5fd8774df8788d266ffb) --- drivers/gpu/drm/tegra/dsi.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/tegra/dsi.c b/drivers/gpu/drm/tegra/dsi.c index de1333dc0d86..0adce882f157 100644 --- a/drivers/gpu/drm/tegra/dsi.c +++ b/drivers/gpu/drm/tegra/dsi.c @@ -1534,9 +1534,11 @@ static int tegra_dsi_ganged_probe(struct tegra_dsi *dsi) np = of_parse_phandle(dsi->dev->of_node, "nvidia,ganged-mode", 0); if (np) { struct platform_device *gangster = of_find_device_by_node(np); + of_node_put(np); + if (!gangster) + return -EPROBE_DEFER; dsi->slave = platform_get_drvdata(gangster); - of_node_put(np); if (!dsi->slave) { put_device(&gangster->dev); -- Gitee