drm/amdgpu: add gang submit backend v2
authorChristian König <christian.koenig@amd.com>
Wed, 2 Mar 2022 15:26:53 +0000 (16:26 +0100)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 20 Sep 2022 16:40:32 +0000 (12:40 -0400)
commit68ce8b242242651eb3cb4ff29b79c44d02f752c9
tree2405418f61d1a63f04f8502d8c85df90e3b32b03
parentc05d789fed948ed6a45963ae0d5d79c67b87aebf
drm/amdgpu: add gang submit backend v2

Allows submitting jobs as gang which needs to run on multiple
engines at the same time.

Basic idea is that we have a global gang submit fence representing when the
gang leader is finally pushed to run on the hardware last.

Jobs submitted as gang are never re-submitted in case of a GPU reset since this
won't work and will just deadlock the hardware immediately again.

v2: fix logic inversion, improve documentation, fix rcu

Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu.h
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
drivers/gpu/drm/amd/amdgpu/amdgpu_job.c
drivers/gpu/drm/amd/amdgpu/amdgpu_job.h