From: Alex Deucher Date: Thu, 30 Apr 2015 15:42:54 +0000 (-0400) Subject: drm/amdgpu: fix error handling in cz_dpm_hw_fini/cz_dpm_suspend X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=1045745742fc12c1320ccce849ca2810c6563f8d;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git drm/amdgpu: fix error handling in cz_dpm_hw_fini/cz_dpm_suspend Need to unlock the mutex on error. Noticed-by: Dan Carpenter Reviewed-by: Christian König Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/amdgpu/cz_dpm.c b/drivers/gpu/drm/amd/amdgpu/cz_dpm.c index b5c8485d8a58..e56f54bf87d2 100644 --- a/drivers/gpu/drm/amd/amdgpu/cz_dpm.c +++ b/drivers/gpu/drm/amd/amdgpu/cz_dpm.c @@ -1274,8 +1274,6 @@ static int cz_dpm_hw_fini(struct amdgpu_device *adev) if (adev->pm.dpm_enabled) { ret = cz_dpm_disable(adev); - if (ret) - return -EINVAL; adev->pm.dpm.current_ps = adev->pm.dpm.requested_ps = @@ -1286,7 +1284,7 @@ static int cz_dpm_hw_fini(struct amdgpu_device *adev) mutex_unlock(&adev->pm.mutex); - return 0; + return ret; } static int cz_dpm_suspend(struct amdgpu_device *adev) @@ -1297,8 +1295,6 @@ static int cz_dpm_suspend(struct amdgpu_device *adev) mutex_lock(&adev->pm.mutex); ret = cz_dpm_disable(adev); - if (ret) - return -EINVAL; adev->pm.dpm.current_ps = adev->pm.dpm.requested_ps = @@ -1307,7 +1303,7 @@ static int cz_dpm_suspend(struct amdgpu_device *adev) mutex_unlock(&adev->pm.mutex); } - return 0; + return ret; } static int cz_dpm_resume(struct amdgpu_device *adev)