]> git.baikalelectronics.ru Git - kernel.git/commit
drm/amdkfd: only allow heavy-weight TLB flush on some ASICs for SVM too
authorLang Yu <Lang.Yu@amd.com>
Fri, 15 Apr 2022 07:35:44 +0000 (15:35 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 19 Apr 2022 17:58:07 +0000 (13:58 -0400)
commitff4cc15770dd8e7213c0d1f1f77a164dad717604
tree8fc9ef6081478b3ff2d24d26acb6a666b064265c
parentecfbcf1776cb40b7da29b17d659dbdead5f93a91
drm/amdkfd: only allow heavy-weight TLB flush on some ASICs for SVM too

The idea is from
commit 155449fe36e4 ("drm/amdkfd: Only apply heavy-weight TLB flush on Aldebaran")
and
commit 452dc34d2252 ("drm/amdkfd: enable heavy-weight TLB flush on Arcturus").

At the moment, heavy-weight TLB could cause problems on ASICs except
Aldebaran and Arcturus.

A simple hipMallocManaged/hipFree program could trigger this issue.

[   97.787657] amdgpu 0000:01:00.0: amdgpu: wait for kiq fence error: 0.
[  106.868758] amdgpu: qcm fence wait loop timeout expired
[  106.868966] amdgpu: The cp might be in an unrecoverable state due to an unsuccessful queues preemption
[  106.869203] amdgpu: Failed to evict process queues
[  106.869261] amdgpu: Failed to quiesce KFD

Signed-off-by: Lang Yu <Lang.Yu@amd.com>
Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdkfd/kfd_svm.c