Commit 0746082d authored by Ma Ke's avatar Ma Ke Committed by Li Huafei
Browse files

drm/sti: avoid potential dereference of error pointers

stable inclusion
from stable-v6.6.64
commit 8ab73ac97c0fa528f66eeccd9bb53eb6eb7d20dc
category: bugfix
bugzilla: https://gitee.com/src-openeuler/kernel/issues/IBHLRS
CVE: CVE-2024-56776

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=8ab73ac97c0fa528f66eeccd9bb53eb6eb7d20dc



--------------------------------

commit 831214f77037de02afc287eae93ce97f218d8c04 upstream.

The return value of drm_atomic_get_crtc_state() needs to be
checked. To avoid use of error pointer 'crtc_state' in case
of the failure.

Cc: stable@vger.kernel.org
Fixes: dd86dc2f ("drm/sti: implement atomic_check for the planes")
Signed-off-by: default avatarMa Ke <make24@iscas.ac.cn>
Link: https://patchwork.freedesktop.org/patch/msgid/20240913090412.2022848-1-make24@iscas.ac.cn


Signed-off-by: default avatarAlain Volmat <alain.volmat@foss.st.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: default avatarLi Huafei <lihuafei1@huawei.com>
parent 4fbc6335
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -200,6 +200,9 @@ static int sti_cursor_atomic_check(struct drm_plane *drm_plane,
		return 0;

	crtc_state = drm_atomic_get_crtc_state(state, crtc);
	if (IS_ERR(crtc_state))
		return PTR_ERR(crtc_state);

	mode = &crtc_state->mode;
	dst_x = new_plane_state->crtc_x;
	dst_y = new_plane_state->crtc_y;