From 5c52444a4264c95741cfcb0d8f7fa7b00d62d5a3 Mon Sep 17 00:00:00 2001 From: Alex Waterman Date: Tue, 2 Oct 2018 18:09:27 -0700 Subject: [PATCH] gpu: nvgpu: Track num_user_mapped_buffers more clearly This patch moves the increment and decrement of the user mapped buffer count to the insert/remove mapped buffer functions since this value should only ever change when these functions are called. Bug 200105199 Change-Id: I5b0a86d00e9e948c48e313153a668eb2e10fca49 Signed-off-by: Alex Waterman Reviewed-on: https://git-master.nvidia.com/r/1917791 Reviewed-by: mobile promotions Tested-by: mobile promotions --- drivers/gpu/nvgpu/common/mm/vm.c | 10 ++++------ drivers/gpu/nvgpu/include/nvgpu/vm.h | 2 -- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/drivers/gpu/nvgpu/common/mm/vm.c b/drivers/gpu/nvgpu/common/mm/vm.c index 8888d6f3f..517f27ae7 100644 --- a/drivers/gpu/nvgpu/common/mm/vm.c +++ b/drivers/gpu/nvgpu/common/mm/vm.c @@ -684,14 +684,16 @@ int nvgpu_insert_mapped_buf(struct vm_gk20a *vm, mapped_buffer->node.key_end = mapped_buffer->addr + mapped_buffer->size; nvgpu_rbtree_insert(&mapped_buffer->node, &vm->mapped_buffers); + vm->num_user_mapped_buffers++; return 0; } -void nvgpu_remove_mapped_buf(struct vm_gk20a *vm, - struct nvgpu_mapped_buf *mapped_buffer) +static void nvgpu_remove_mapped_buf(struct vm_gk20a *vm, + struct nvgpu_mapped_buf *mapped_buffer) { nvgpu_rbtree_unlink(&mapped_buffer->node, &vm->mapped_buffers); + vm->num_user_mapped_buffers--; } struct nvgpu_mapped_buf *__nvgpu_vm_find_mapped_buf( @@ -1076,8 +1078,6 @@ struct nvgpu_mapped_buf *nvgpu_vm_map(struct vm_gk20a *vm, goto clean_up; } - vm->num_user_mapped_buffers++; - if (vm_area) { nvgpu_list_add_tail(&mapped_buffer->buffer_list, &vm_area->buffer_list_head); @@ -1117,8 +1117,6 @@ static void __nvgpu_vm_unmap(struct nvgpu_mapped_buf *mapped_buffer, struct vm_gk20a *vm = mapped_buffer->vm; struct gk20a *g = vm->mm->g; - vm->num_user_mapped_buffers--; - g->ops.mm.gmmu_unmap(vm, mapped_buffer->addr, mapped_buffer->size, diff --git a/drivers/gpu/nvgpu/include/nvgpu/vm.h b/drivers/gpu/nvgpu/include/nvgpu/vm.h index cb9f06d5a..bc2ffec1f 100644 --- a/drivers/gpu/nvgpu/include/nvgpu/vm.h +++ b/drivers/gpu/nvgpu/include/nvgpu/vm.h @@ -288,8 +288,6 @@ struct nvgpu_mapped_buf *__nvgpu_vm_find_mapped_buf_less_than( int nvgpu_insert_mapped_buf(struct vm_gk20a *vm, struct nvgpu_mapped_buf *mapped_buffer); -void nvgpu_remove_mapped_buf(struct vm_gk20a *vm, - struct nvgpu_mapped_buf *mapped_buffer); /* * Initialize a preallocated vm