drm/amd/display: Don't refer to dc_sink in is_dsc_need_re_compute
authorWayne Lin <wayne.lin@amd.com>
Tue, 21 May 2024 03:54:26 +0000 (11:54 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 14 Jun 2024 20:17:16 +0000 (16:17 -0400)
commitfcf6a49d79923a234844b8efe830a61f3f0584e4
treedbb968ce1d5d52793489e2871a56d34f1d694c12
parentfc6d61ad1dc7dda7b32f1d1c08d0e6e372cda628
drm/amd/display: Don't refer to dc_sink in is_dsc_need_re_compute

[Why]
When unplug one of monitors connected after mst hub, encounter null pointer dereference.

It's due to dc_sink get released immediately in early_unregister() or detect_ctx(). When
commit new state which directly referring to info stored in dc_sink will cause null pointer
dereference.

[how]
Remove redundant checking condition. Relevant condition should already be covered by checking
if dsc_aux is null or not. Also reset dsc_aux to NULL when the connector is disconnected.

Reviewed-by: Jerry Zuo <jerry.zuo@amd.com>
Acked-by: Zaeem Mohamed <zaeem.mohamed@amd.com>
Signed-off-by: Wayne Lin <wayne.lin@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c