diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 4 | 
1 files changed, 3 insertions, 1 deletions
| diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c index 4a1cb20deb2d..c3412709e626 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c @@ -211,7 +211,9 @@ static void amdgpu_vm_bo_moved(struct amdgpu_vm_bo_base *vm_bo)   */  static void amdgpu_vm_bo_idle(struct amdgpu_vm_bo_base *vm_bo)  { +	spin_lock(&vm_bo->vm->status_lock);  	list_move(&vm_bo->vm_status, &vm_bo->vm->idle); +	spin_unlock(&vm_bo->vm->status_lock);  	vm_bo->moved = false;  } @@ -2554,6 +2556,7 @@ void amdgpu_debugfs_vm_bo_info(struct amdgpu_vm *vm, struct seq_file *m)  	unsigned int total_done_objs = 0;  	unsigned int id = 0; +	spin_lock(&vm->status_lock);  	seq_puts(m, "\tIdle BOs:\n");  	list_for_each_entry_safe(bo_va, tmp, &vm->idle, base.vm_status) {  		if (!bo_va->base.bo) @@ -2591,7 +2594,6 @@ void amdgpu_debugfs_vm_bo_info(struct amdgpu_vm *vm, struct seq_file *m)  	id = 0;  	seq_puts(m, "\tInvalidated BOs:\n"); -	spin_lock(&vm->status_lock);  	list_for_each_entry_safe(bo_va, tmp, &vm->invalidated, base.vm_status) {  		if (!bo_va->base.bo)  			continue; | 
