]> git.baikalelectronics.ru Git - kernel.git/commit
drm/amdgpu: enable Navi retry fault wptr overflow
authorPhilip Yang <Philip.Yang@amd.com>
Tue, 23 Nov 2021 15:20:17 +0000 (10:20 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 24 Nov 2021 20:13:10 +0000 (15:13 -0500)
commitcd59b57430cf04e303db63e5f6fe11f640b96bd0
tree8c69e4a7262c8afe1e8ee6e0e0df6747b7add58e
parent43c3d57821564b53b0d77baac611e7405c009349
drm/amdgpu: enable Navi retry fault wptr overflow

If xnack is on, VM retry fault interrupt send to IH ring1, and ring1
will be full quickly. IH cannot receive other interrupts, this causes
deadlock if migrating buffer using sdma and waiting for sdma done
while handling retry fault.

Remove VMC from IH storm client, enable ring1 write pointer
overflow, then IH will drop retry fault interrupts and be able to receive
other interrupts while driver is handling retry fault.

IH ring1 write pointer doesn't writeback to memory by IH, and ring1
write pointer recorded by self-irq is not updated, so always read
the latest ring1 write pointer from register.

Signed-off-by: Philip Yang <Philip.Yang@amd.com>
Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/navi10_ih.c