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 d95569e0e53a..61337d4c0bb2 100644 --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c @@ -2624,15 +2624,15 @@ static void handle_hpd_rx_irq(void *param) } } - if (!amdgpu_in_reset(adev)) + if (!amdgpu_in_reset(adev)) { mutex_lock(&adev->dm.dc_lock); #ifdef CONFIG_DRM_AMD_DC_HDCP result = dc_link_handle_hpd_rx_irq(dc_link, &hpd_irq_data, NULL); #else result = dc_link_handle_hpd_rx_irq(dc_link, NULL, NULL); #endif - if (!amdgpu_in_reset(adev)) mutex_unlock(&adev->dm.dc_lock); + } out: if (result && !is_mst_root_connector) {