drm/amdgpu: fix error handling in cz_dpm_hw_fini/cz_dpm_suspend

Need to unlock the mutex on error.

Noticed-by: Dan Carpenter <dan.carpenter@oracle.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
Alex Deucher 2015-04-30 11:42:54 -04:00
parent decee87a88
commit 1045745742
1 changed files with 2 additions and 6 deletions

View File

@ -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)