diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c index 275378c46b9f..2c3d9557e1a2 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | |||
@@ -185,7 +185,7 @@ int amdgpu_vm_grab_id(struct amdgpu_vm *vm, struct amdgpu_ring *ring, | |||
185 | if (!id) | 185 | if (!id) |
186 | continue; | 186 | continue; |
187 | 187 | ||
188 | if (atomic_long_read(&id->owner) != (long)vm) | 188 | if (atomic_long_read(&id->owner) != vm->client_id) |
189 | continue; | 189 | continue; |
190 | 190 | ||
191 | if (pd_addr != id->pd_gpu_addr) | 191 | if (pd_addr != id->pd_gpu_addr) |
@@ -261,7 +261,7 @@ int amdgpu_vm_grab_id(struct amdgpu_vm *vm, struct amdgpu_ring *ring, | |||
261 | 261 | ||
262 | list_move_tail(&id->list, &adev->vm_manager.ids_lru); | 262 | list_move_tail(&id->list, &adev->vm_manager.ids_lru); |
263 | id->last_user = ring; | 263 | id->last_user = ring; |
264 | atomic_long_set(&id->owner, (long)vm); | 264 | atomic_long_set(&id->owner, vm->client_id); |
265 | vm->ids[ring->idx] = id; | 265 | vm->ids[ring->idx] = id; |
266 | 266 | ||
267 | *vm_id = id - adev->vm_manager.ids; | 267 | *vm_id = id - adev->vm_manager.ids; |
@@ -1485,7 +1485,7 @@ void amdgpu_vm_fini(struct amdgpu_device *adev, struct amdgpu_vm *vm) | |||
1485 | list) { | 1485 | list) { |
1486 | if (!id) | 1486 | if (!id) |
1487 | continue; | 1487 | continue; |
1488 | if (atomic_long_read(&id->owner) == (long)vm) { | 1488 | if (atomic_long_read(&id->owner) == vm->client_id) { |
1489 | atomic_long_set(&id->owner, 0); | 1489 | atomic_long_set(&id->owner, 0); |
1490 | id->pd_gpu_addr = 0; | 1490 | id->pd_gpu_addr = 0; |
1491 | } | 1491 | } |