[PATCH V2] drm/amdgpu: validate return value of pm_runtime_get_sync
Sunil Khatri
sunil.khatri at amd.com
Tue Mar 4 19:32:02 UTC 2025
An invalid return value 'r' of the pm_runtime_get_sync
is r < 0, so fix the return value check and add proper
failure log and exit cleanly.
Successful refcount in userqueue creation to make sure
device remains in active state.
Signed-off-by: Sunil Khatri <sunil.khatri at amd.com>
---
drivers/gpu/drm/amd/amdgpu/mes_userqueue.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/amd/amdgpu/mes_userqueue.c b/drivers/gpu/drm/amd/amdgpu/mes_userqueue.c
index 3a71d01b54c9..7df50ff80f9b 100644
--- a/drivers/gpu/drm/amd/amdgpu/mes_userqueue.c
+++ b/drivers/gpu/drm/amd/amdgpu/mes_userqueue.c
@@ -289,8 +289,11 @@ static int mes_userq_mqd_create(struct amdgpu_userq_mgr *uq_mgr,
queue->userq_prop = userq_props;
r = pm_runtime_get_sync(adev_to_drm(adev)->dev);
- if (r)
+ if (r < 0) {
+ drm_err(&adev->ddev, "Failed to increment ref count of device pm_runtime\n");
+ pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
goto free_mqd;
+ }
r = mqd_hw_default->init_mqd(adev, (void *)queue->mqd.cpu_ptr, userq_props);
if (r) {
--
2.34.1
More information about the amd-gfx
mailing list