The root cause of the mentioned test regressions was a sync issue due to missing/wrong locking of VM status-related fields. It is fixed now, so the FIXME can go.
Signed-off-by: Natalie Vock <[email protected]> --- drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 20 -------------------- 1 file changed, 20 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c index 6e5db173f6462..4c72162ec331e 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c @@ -1139,26 +1139,6 @@ static int amdgpu_cs_vm_handling(struct amdgpu_cs_parser *p) return r; } - /* FIXME: In theory this loop shouldn't be needed any more when - * amdgpu_vm_handle_moved handles all moved BOs that are reserved - * with p->ticket. But removing it caused test regressions, so I'm - * leaving it here for now. - */ - amdgpu_bo_list_for_each_entry(e, p->bo_list) { - bo_va = e->bo_va; - if (bo_va == NULL) - continue; - - r = amdgpu_vm_bo_update(adev, bo_va, false); - if (r) - return r; - - r = amdgpu_sync_fence(&p->sync, bo_va->last_pt_update, - GFP_KERNEL); - if (r) - return r; - } - r = amdgpu_vm_handle_moved(adev, vm, &p->exec.ticket); if (r) return r; -- 2.54.0
