]> git.baikalelectronics.ru Git - kernel.git/commit
drm/amdgpu:fix world switch hang
authorMonk Liu <Monk.Liu@amd.com>
Tue, 6 Jun 2017 09:25:13 +0000 (17:25 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 14 Jul 2017 15:06:10 +0000 (11:06 -0400)
commit949ddfdc220a4aff3ba11e2ca14c231801db0bab
tree7bfca536bc87c4ae0e8ad6129f95bc72dd6bef9a
parent0108204c23f7c0bda4857fb0dfec956faa4c29b1
drm/amdgpu:fix world switch hang

for SR-IOV, we must keep the pipeline-sync in the protection
of COND_EXEC, otherwise the command consumed by CPG is not
consistent when world switch triggerd, e.g.:

world switch hit and the IB frame is skipped so the fence
won't signal, thus CP will jump to the next DMAframe's pipeline-sync
command, and it will make CP hang foever.

after pipelin-sync moved into COND_EXEC the consistency can be
guaranteed

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