[PATCH] drm/amdgpu/dm: Fix NULL pointer crash during DP MST hotplug

Harry Wentland harry.wentland at amd.com
Thu Apr 15 17:58:42 UTC 2021


On 2021-04-15 1:55 p.m., Shashank Sharma wrote:
> This patch checks the return value of the function
> dc_link_add_remote_sink before using it. This was causing
> a crash during consecutive hotplugs of DP MST displays.
> 
> Cc: Harry Wentland <harry.wentland at amd.com>
> Signed-off-by: Shashank Sharma <shashank.sharma at amd.com>

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

Harry

> ---
>   drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c | 5 +++++
>   1 file changed, 5 insertions(+)
> 
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c
> index eee19edeeee5..8dc5005bec0a 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c
> @@ -226,6 +226,11 @@ static int dm_dp_mst_get_modes(struct drm_connector *connector)
>   			(aconnector->edid->extensions + 1) * EDID_LENGTH,
>   			&init_params);
>   
> +		if (!dc_sink) {
> +			DRM_ERROR("Unable to add a remote sink\n");
> +			return 0;
> +		}
> +
>   		dc_sink->priv = aconnector;
>   		/* dc_link_add_remote_sink returns a new reference */
>   		aconnector->dc_sink = dc_sink;
> 



More information about the amd-gfx mailing list