From 33116132568edcf6565cfd65cfa433f440d90494 Mon Sep 17 00:00:00 2001 From: Chen Ni Date: Tue, 10 Sep 2024 14:25:42 +0800 Subject: [PATCH] drm/qxl: Add check for drm_cvt_mode stable inclusion from stable-v5.10.224 commit 4e87f592a46bb804d8f833da6ce702ae4b55053f category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/IAKQ5J CVE: CVE-2024-43829 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=4e87f592a46bb804d8f833da6ce702ae4b55053f -------------------------------- [ Upstream commit 7bd09a2db0f617377027a2bb0b9179e6959edff3 ] Add check for the return value of drm_cvt_mode() and return the error if it fails in order to avoid NULL pointer dereference. Fixes: 1b043677d4be ("drm/qxl: add qxl_add_mode helper function") Signed-off-by: Chen Ni Reviewed-by: Heng Qi Signed-off-by: Maxime Ripard Link: https://patchwork.freedesktop.org/patch/msgid/20240621071031.1987974-1-nichen@iscas.ac.cn Signed-off-by: Sasha Levin Signed-off-by: Wang Hai --- drivers/gpu/drm/qxl/qxl_display.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/gpu/drm/qxl/qxl_display.c b/drivers/gpu/drm/qxl/qxl_display.c index f22a1b776f4b..3ffa721d777b 100644 --- a/drivers/gpu/drm/qxl/qxl_display.c +++ b/drivers/gpu/drm/qxl/qxl_display.c @@ -232,6 +232,9 @@ static int qxl_add_mode(struct drm_connector *connector, return 0; mode = drm_cvt_mode(dev, width, height, 60, false, false, false); + if (!mode) + return 0; + if (preferred) mode->type |= DRM_MODE_TYPE_PREFERRED; mode->hdisplay = width; -- Gitee