[PATCH] drm/amd/display: Fix NULL ptr deref for commit_planes_to_stream

Wentland, Harry Harry.Wentland at amd.com
Fri Nov 30 15:31:20 UTC 2018


On 2018-11-30 10:09 a.m., Nicholas Kazlauskas wrote:
> [Why]
> With scaling, underscan and abm changes we can end up calling
> commit_planes_to_stream in commit_tail. This call uses dm_state->context
> which can be NULL if the commit was a fast update.
> 
> [How]
> Use dc_state instead since that can't be NULL unless the system ran
> out of memory.
> 
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108912
> Fixes: e64abff2f133 ("drm/amd/display: Use private obj helpers for dm_atomic_state")
> 
> Cc: Leo Li <sunpeng.li at amd.com>
> Cc: Harry Wentland <harry.wentland at amd.com>
> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas at amd.com>

Reviewed-by: Harry Wentland <harry.wentland at amd.com>

Harry

> ---
>  drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> index 76b1aebdca0c..8ecd78657d43 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> @@ -5011,7 +5011,7 @@ static void amdgpu_dm_atomic_commit_tail(struct drm_atomic_state *state)
>  				status->plane_count,
>  				dm_new_crtc_state,
>  				to_dm_crtc_state(old_crtc_state),
> -				dm_state->context))
> +				dc_state))
>  			dm_error("%s: Failed to update stream scaling!\n", __func__);
>  	}
>  
> 


More information about the amd-gfx mailing list