diff options
author | Andrey Grodzovsky <andrey.grodzovsky@amd.com> | 2022-05-17 11:17:35 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2022-06-10 15:25:34 -0400 |
commit | ab9a0b1f3661157d144fb744f3a197563e8e0ff4 (patch) | |
tree | aecc27ffe5cbd782ffbf97927d108056e539d4c5 /drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | |
parent | 73b4b53276a1d6290cd4f47dbbc885b6e6e59ac6 (diff) | |
download | linux-ab9a0b1f3661157d144fb744f3a197563e8e0ff4.tar.bz2 |
drm/amdgpu: Cache result of last reset at reset domain level.
Will be read by executors of async reset like debugfs.
Signed-off-by: Andrey Grodzovsky <andrey.grodzovsky@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_device.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c index b9d50cb6c236..6abec88cb5a8 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c @@ -5318,6 +5318,8 @@ skip_sched_resume: if (r) dev_info(adev->dev, "GPU reset end with ret = %d\n", r); + + atomic_set(&adev->reset_domain->reset_res, r); return r; } @@ -5332,7 +5334,7 @@ static void amdgpu_device_queue_gpu_recover_work(struct work_struct *work) { struct amdgpu_recover_work_struct *recover_work = container_of(work, struct amdgpu_recover_work_struct, base); - recover_work->ret = amdgpu_device_gpu_recover_imp(recover_work->adev, recover_work->job); + amdgpu_device_gpu_recover_imp(recover_work->adev, recover_work->job); } /* * Serialize gpu recover into reset domain single threaded wq @@ -5349,7 +5351,7 @@ int amdgpu_device_gpu_recover(struct amdgpu_device *adev, flush_work(&work.base); - return work.ret; + return atomic_read(&adev->reset_domain->reset_res); } /** |