From 79d30e7fbab9e7adcc0de747606e1497332ed4fe Mon Sep 17 00:00:00 2001 From: Lei Chen Date: Tue, 6 Jul 2021 19:06:20 +0800 Subject: [PATCH] drm/msm/sde: add check to fix null pointer dereference Check if sde_enc->crtc exists before using the variable to avoid possible NULL dereferences. Change-Id: If7b56c3b3ad3525b3efc22b6536a2dc5c865da48 Signed-off-by: Lei Chen --- msm/sde/sde_encoder.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/msm/sde/sde_encoder.c b/msm/sde/sde_encoder.c index d19a5e2d93..45b008efd6 100644 --- a/msm/sde/sde_encoder.c +++ b/msm/sde/sde_encoder.c @@ -3109,7 +3109,7 @@ static void sde_encoder_virt_disable(struct drm_encoder *drm_enc) /* reset connector topology name property */ if (sde_enc->cur_master && sde_enc->cur_master->connector && - sde_enc->crtc->state->active_changed) { + sde_enc->crtc && sde_enc->crtc->state->active_changed) { ret = sde_rm_update_topology(&sde_kms->rm, sde_enc->cur_master->connector->state, NULL); if (ret) { @@ -5531,6 +5531,8 @@ int sde_encoder_update_caps_for_cont_splash(struct drm_encoder *encoder, conn->base.id); } + sde_enc->crtc = encoder->crtc; + ret = sde_rm_reserve(&sde_kms->rm, encoder, encoder->crtc->state, conn->state, false); if (ret) {