]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/sti: avoid potential dereference of error pointers in sti_gdp_atomic_check
authorMa Ke <make24@iscas.ac.cn>
Mon, 9 Sep 2024 06:33:59 +0000 (14:33 +0800)
committerAlain Volmat <alain.volmat@foss.st.com>
Mon, 23 Sep 2024 19:40:41 +0000 (21:40 +0200)
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: dd86dc2f9ae1 ("drm/sti: implement atomic_check for the planes")
Signed-off-by: Ma Ke <make24@iscas.ac.cn>
Acked-by: Alain Volmat <alain.volmat@foss.st.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240909063359.1197065-1-make24@iscas.ac.cn
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
drivers/gpu/drm/sti/sti_gdp.c

index 43c72c2604a0cdb8abd0d8e79cb41d8b45a08290..f046f5f7ad259d28b7c5198222dfc72a5c09f8c5 100644 (file)
@@ -638,6 +638,9 @@ static int sti_gdp_atomic_check(struct drm_plane *drm_plane,
 
        mixer = to_sti_mixer(crtc);
        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;