| From beaf2c385327a4eb3f8fe5137f1684fb303ff158 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Sun, 7 Apr 2024 14:30:53 +0800 |
| Subject: drm/arm/malidp: fix a possible null pointer dereference |
| |
| From: Huai-Yuan Liu <qq810974084@gmail.com> |
| |
| [ Upstream commit a1f95aede6285dba6dd036d907196f35ae3a11ea ] |
| |
| In malidp_mw_connector_reset, new memory is allocated with kzalloc, but |
| no check is performed. In order to prevent null pointer dereferencing, |
| ensure that mw_state is checked before calling |
| __drm_atomic_helper_connector_reset. |
| |
| Fixes: 8cbc5caf36ef ("drm: mali-dp: Add writeback connector") |
| Signed-off-by: Huai-Yuan Liu <qq810974084@gmail.com> |
| Signed-off-by: Liviu Dudau <liviu.dudau@arm.com> |
| Link: https://patchwork.freedesktop.org/patch/msgid/20240407063053.5481-1-qq810974084@gmail.com |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/gpu/drm/arm/malidp_mw.c | 5 ++++- |
| 1 file changed, 4 insertions(+), 1 deletion(-) |
| |
| diff --git a/drivers/gpu/drm/arm/malidp_mw.c b/drivers/gpu/drm/arm/malidp_mw.c |
| index 626709bec6f5f..2577f0cef8fcd 100644 |
| --- a/drivers/gpu/drm/arm/malidp_mw.c |
| +++ b/drivers/gpu/drm/arm/malidp_mw.c |
| @@ -72,7 +72,10 @@ static void malidp_mw_connector_reset(struct drm_connector *connector) |
| __drm_atomic_helper_connector_destroy_state(connector->state); |
| |
| kfree(connector->state); |
| - __drm_atomic_helper_connector_reset(connector, &mw_state->base); |
| + connector->state = NULL; |
| + |
| + if (mw_state) |
| + __drm_atomic_helper_connector_reset(connector, &mw_state->base); |
| } |
| |
| static enum drm_connector_status |
| -- |
| 2.43.0 |
| |