aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPavan Kumar Ramayanam <pavan.ramayanam@amd.com>2021-04-27 10:21:18 +0530
committerAlex Deucher <alexander.deucher@amd.com>2021-05-10 18:06:42 -0400
commit8e4d5d43cc6ceb1e6bb76f4ac37c2cf41965484e (patch)
tree22c64e86b8c748998e86fd6ac0d8f75b6a1e3003
parentdb7f1e0140e83be6cb4179fc28074cd3c4f1225f (diff)
drm/amdgpu: Handling of amdgpu_device_resume return value for graceful teardown
The runtime resume PM op disregards the return value from amdgpu_device_resume(), masking errors for failed resumes at the PM layer. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Pavan Kumar Ramayanam <pavan.ramayanam@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
index 4f62c78485ca..ad8a2c391bbd 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
@@ -1574,6 +1574,9 @@ static int amdgpu_pmops_runtime_resume(struct device *dev)
amdgpu_device_baco_exit(drm_dev);
}
ret = amdgpu_device_resume(drm_dev, false);
+ if (ret)
+ return ret;
+
if (amdgpu_device_supports_px(drm_dev))
drm_dev->switch_power_state = DRM_SWITCH_POWER_ON;
adev->in_runpm = false;