From fa4a882008a71bf18a30c7f548572ecf19882fbd Mon Sep 17 00:00:00 2001 From: Alex Jivin Date: Mon, 6 Jul 2020 11:07:19 -0400 Subject: [PATCH] drm/amdgpu: Move the mutex lock/unlock out Move the mutext lock/unlock outside of the if(), as the mutex is always taken: either in the if() branch or in the else branch. Signed-off-by: Alex Jivin Suggested-By: Luben Tukov Reviewed-by: Luben Tuikov Signed-off-by: Alex Deucher --- drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c index 838d6d51904c7..d2401379bd33e 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c @@ -3559,16 +3559,14 @@ void amdgpu_dpm_enable_uvd(struct amdgpu_device *adev, bool enable) int ret = 0; if (adev->family == AMDGPU_FAMILY_SI) { + mutex_lock(&adev->pm.mutex); if (enable) { - mutex_lock(&adev->pm.mutex); adev->pm.dpm.uvd_active = true; adev->pm.dpm.state = POWER_STATE_TYPE_INTERNAL_UVD; - mutex_unlock(&adev->pm.mutex); } else { - mutex_lock(&adev->pm.mutex); adev->pm.dpm.uvd_active = false; - mutex_unlock(&adev->pm.mutex); } + mutex_unlock(&adev->pm.mutex); amdgpu_pm_compute_clocks(adev); } else { @@ -3596,17 +3594,15 @@ void amdgpu_dpm_enable_vce(struct amdgpu_device *adev, bool enable) int ret = 0; if (adev->family == AMDGPU_FAMILY_SI) { + mutex_lock(&adev->pm.mutex); if (enable) { - mutex_lock(&adev->pm.mutex); adev->pm.dpm.vce_active = true; /* XXX select vce level based on ring/task */ adev->pm.dpm.vce_level = AMD_VCE_LEVEL_AC_ALL; - mutex_unlock(&adev->pm.mutex); } else { - mutex_lock(&adev->pm.mutex); adev->pm.dpm.vce_active = false; - mutex_unlock(&adev->pm.mutex); } + mutex_unlock(&adev->pm.mutex); amdgpu_pm_compute_clocks(adev); } else { -- 2.30.2