]> git.hungrycats.org Git - linux/commitdiff
drm/sti: avoid potential dereference of error pointers in sti_hqvdp_atomic_check
authorMa Ke <make24@iscas.ac.cn>
Fri, 13 Sep 2024 09:09:26 +0000 (17:09 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 9 Dec 2024 09:41:12 +0000 (10:41 +0100)
commit c1ab40a1fdfee732c7e6ff2fb8253760293e47e8 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: dd86dc2f9ae1 ("drm/sti: implement atomic_check for the planes")
Signed-off-by: Ma Ke <make24@iscas.ac.cn>
Link: https://patchwork.freedesktop.org/patch/msgid/20240913090926.2023716-1-make24@iscas.ac.cn
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpu/drm/sti/sti_hqvdp.c

index acbf70b95aeb97caa419e18d6291f8c889c761c9..5793cf2cb8972c3d00453813d8c3a968bddca649 100644 (file)
@@ -1037,6 +1037,9 @@ static int sti_hqvdp_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;