aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
index 2aff938f94c6..856116a874bb 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
@@ -191,7 +191,7 @@ int amdgpu_vm_grab_id(struct amdgpu_vm *vm, struct amdgpu_ring *ring,
191 if (pd_addr != id->pd_gpu_addr) 191 if (pd_addr != id->pd_gpu_addr)
192 continue; 192 continue;
193 193
194 if (id != vm->ids[ring->idx] && 194 if (id->last_user != ring &&
195 (!id->last_flush || !fence_is_signaled(id->last_flush))) 195 (!id->last_flush || !fence_is_signaled(id->last_flush)))
196 continue; 196 continue;
197 197
@@ -200,7 +200,7 @@ int amdgpu_vm_grab_id(struct amdgpu_vm *vm, struct amdgpu_ring *ring,
200 continue; 200 continue;
201 201
202 /* Good we can use this VMID */ 202 /* Good we can use this VMID */
203 if (id == vm->ids[ring->idx]) { 203 if (id->last_user == ring) {
204 r = amdgpu_sync_fence(ring->adev, sync, 204 r = amdgpu_sync_fence(ring->adev, sync,
205 id->first); 205 id->first);
206 if (r) 206 if (r)