|
@@ -1197,11 +1197,13 @@ int radeon_vm_bo_update_pte(struct radeon_device *rdev,
|
|
|
int radeon_vm_bo_rmv(struct radeon_device *rdev,
|
|
|
struct radeon_bo_va *bo_va)
|
|
|
{
|
|
|
- int r;
|
|
|
+ int r = 0;
|
|
|
|
|
|
mutex_lock(&rdev->vm_manager.lock);
|
|
|
mutex_lock(&bo_va->vm->mutex);
|
|
|
- r = radeon_vm_bo_update_pte(rdev, bo_va->vm, bo_va->bo, NULL);
|
|
|
+ if (bo_va->soffset) {
|
|
|
+ r = radeon_vm_bo_update_pte(rdev, bo_va->vm, bo_va->bo, NULL);
|
|
|
+ }
|
|
|
mutex_unlock(&rdev->vm_manager.lock);
|
|
|
list_del(&bo_va->vm_list);
|
|
|
mutex_unlock(&bo_va->vm->mutex);
|