possible amdgpu_task_info reference leak

Dave Airlie airlied at gmail.com
Thu Jul 3 23:59:08 UTC 2025


In this commit :
a72002cb181f350734108228b24c5d10d358f95a
Author: André Almeida <andrealmeid at igalia.com>
Date:   Tue Jun 17 09:49:49 2025 -0300

    drm/amdgpu: Make use of drm_wedge_task_info



@@ -164,13 +165,15 @@ static enum drm_gpu_sched_stat
amdgpu_job_timedout(struct drm_sched_job *s_job)
                        if (amdgpu_ring_sched_ready(ring))
                                drm_sched_start(&ring->sched, 0);
                        dev_err(adev->dev, "Ring %s reset
succeeded\n", ring->sched.name);
-                       drm_dev_wedged_event(adev_to_drm(adev),
DRM_WEDGE_RECOVERY_NONE, NULL);
+                       drm_dev_wedged_event(adev_to_drm(adev),
DRM_WEDGE_RECOVERY_NONE, info);
                        goto exit;
                }
                dev_err(adev->dev, "Ring %s reset failure\n", ring->sched.name);
        }
        dma_fence_set_error(&s_job->s_fence->finished, -ETIME);

+       amdgpu_vm_put_task_info(ti);
+
        if (amdgpu_device_should_recover_gpu(ring->adev)) {
                struct amdgpu_reset_context reset_context;
                memset(&reset_context, 0, sizeof(reset_context));


Doesn't the goto_exit bypass the amdgpu_vm_put_task_info? and cause a
reference leak at least?

Dave.


More information about the dri-devel mailing list