From: Mario Limonciello <mario.limoncie...@amd.com>

A scoped guard will release the mutex when it goes out of scope.

Reviewed-by: Alex Hung <alex.h...@amd.com>
Signed-off-by: Mario Limonciello <mario.limoncie...@amd.com>
Signed-off-by: Wayne Lin <wayne....@amd.com>
---
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

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 153a073f93de..e0cce4883148 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -3673,7 +3673,7 @@ void amdgpu_dm_update_connector_after_detect(
                 * For S3 resume with headless use eml_sink to fake stream
                 * because on resume connector->sink is set to NULL
                 */
-               mutex_lock(&dev->mode_config.mutex);
+               guard(mutex)(&dev->mode_config.mutex);
 
                if (sink) {
                        if (aconnector->dc_sink) {
@@ -3698,8 +3698,6 @@ void amdgpu_dm_update_connector_after_detect(
                        }
                }
 
-               mutex_unlock(&dev->mode_config.mutex);
-
                if (sink)
                        dc_sink_release(sink);
                return;
@@ -3729,7 +3727,7 @@ void amdgpu_dm_update_connector_after_detect(
        drm_dbg_kms(dev, "DCHPD: connector_id=%d: Old sink=%p New sink=%p\n",
                    aconnector->connector_id, aconnector->dc_sink, sink);
 
-       mutex_lock(&dev->mode_config.mutex);
+       guard(mutex)(&dev->mode_config.mutex);
 
        /*
         * 1. Update status of the drm connector
@@ -3791,8 +3789,6 @@ void amdgpu_dm_update_connector_after_detect(
                        connector->state->content_protection = 
DRM_MODE_CONTENT_PROTECTION_DESIRED;
        }
 
-       mutex_unlock(&dev->mode_config.mutex);
-
        update_subconnector_property(aconnector);
 
        if (sink)
-- 
2.37.3

Reply via email to