aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian König <christian.koenig@amd.com>2019-02-07 06:10:29 -0500
committerAlex Deucher <alexander.deucher@amd.com>2019-06-21 19:58:21 -0400
commita2bd77bbde791202267c25478bbcbe71bb4ecdd5 (patch)
tree727d56568e4ae53422843c971ad4e86a7541fc6d
parent437298b833996de86a94d53e4051461cac25010d (diff)
drm/amdgpu: disable concurrent flushes for Navi10 v2
Navi10 have a bug in the SDMA which can theoretically cause memory corruption with concurrent VMID flushes v2: explicitely check Navi10 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>
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c
index df9b173c3d0b..5899d214187b 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c
@@ -364,8 +364,11 @@ static int amdgpu_vmid_grab_used(struct amdgpu_vm *vm,
364 if (updates && (!flushed || dma_fence_is_later(updates, flushed))) 364 if (updates && (!flushed || dma_fence_is_later(updates, flushed)))
365 needs_flush = true; 365 needs_flush = true;
366 366
367 /* Concurrent flushes are only possible starting with Vega10 */ 367 /* Concurrent flushes are only possible starting with Vega10 and
368 if (adev->asic_type < CHIP_VEGA10 && needs_flush) 368 * are broken on Navi10 and Navi14.
369 */
370 if (needs_flush && (adev->asic_type < CHIP_VEGA10 ||
371 adev->asic_type == CHIP_NAVI10))
369 continue; 372 continue;
370 373
371 /* Good, we can use this VMID. Remember this submission as 374 /* Good, we can use this VMID. Remember this submission as