mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 10:41:38 -04:00
drm/amdgpu: print process info when job timeout
When a job is timeout, try to print the related process information for debugging Signed-off-by: Trigger Huang <[email protected]> Reviewed-by: Christian König <[email protected]>. Signed-off-by: Alex Deucher <[email protected]>
This commit is contained in:
parent
e01f2d4189
commit
0346bfd9fe
1 changed files with 6 additions and 0 deletions
|
|
@ -32,6 +32,9 @@ static void amdgpu_job_timedout(struct drm_sched_job *s_job)
|
|||
{
|
||||
struct amdgpu_ring *ring = to_amdgpu_ring(s_job->sched);
|
||||
struct amdgpu_job *job = to_amdgpu_job(s_job);
|
||||
struct amdgpu_task_info ti;
|
||||
|
||||
memset(&ti, 0, sizeof(struct amdgpu_task_info));
|
||||
|
||||
if (amdgpu_ring_soft_recovery(ring, job->vmid, s_job->s_fence->parent)) {
|
||||
DRM_ERROR("ring %s timeout, but soft recovered\n",
|
||||
|
|
@ -39,9 +42,12 @@ static void amdgpu_job_timedout(struct drm_sched_job *s_job)
|
|||
return;
|
||||
}
|
||||
|
||||
amdgpu_vm_get_task_info(ring->adev, job->pasid, &ti);
|
||||
DRM_ERROR("ring %s timeout, signaled seq=%u, emitted seq=%u\n",
|
||||
job->base.sched->name, atomic_read(&ring->fence_drv.last_seq),
|
||||
ring->fence_drv.sync_seq);
|
||||
DRM_ERROR("Process information: process %s pid %d thread %s pid %d\n",
|
||||
ti.process_name, ti.tgid, ti.task_name, ti.pid);
|
||||
|
||||
if (amdgpu_device_should_recover_gpu(ring->adev))
|
||||
amdgpu_device_gpu_recover(ring->adev, job);
|
||||
|
|
|
|||
Loading…
Reference in a new issue