From 3d5a08c114585e5b9f890807b04d2730dafde5e1 Mon Sep 17 00:00:00 2001 From: "monk.liu" Date: Tue, 26 May 2015 10:22:41 +0800 Subject: [PATCH 0228/1050] drm/amdgpu: max_pde_used usage should be under protect MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Need to take the lock when accessing this. Signed-off-by: monk.liu Reviewed-by: Christian König Reviewed-by: Jammy Zhou --- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c index cc6dca2..dcb2d38 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c @@ -90,10 +90,13 @@ struct amdgpu_bo_list_entry *amdgpu_vm_get_bos(struct amdgpu_device *adev, struct amdgpu_bo_list_entry *list; unsigned i, idx; + mutex_lock(&vm->mutex); list = drm_malloc_ab(vm->max_pde_used + 2, sizeof(struct amdgpu_bo_list_entry)); - if (!list) + if (!list) { + mutex_unlock(&vm->mutex); return NULL; + } /* add the vm page table to the list */ list[0].robj = vm->page_directory; @@ -116,6 +119,7 @@ struct amdgpu_bo_list_entry *amdgpu_vm_get_bos(struct amdgpu_device *adev, list[idx].tv.shared = true; list_add(&list[idx++].tv.head, head); } + mutex_unlock(&vm->mutex); return list; } -- 1.9.1