diff options
author | Debarshi Dutta <ddutta@nvidia.com> | 2017-08-08 02:38:03 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2017-08-24 04:10:37 -0400 |
commit | 3fa47b877db1edc16018d662e7b9915d92354745 (patch) | |
tree | c1d9a8734e7d92b5ae647fbc3f582a01207a23f6 /drivers/gpu/nvgpu/common/linux/vm.c | |
parent | 8662fae334f2419da2e7fd220f7734217ec52433 (diff) |
gpu: nvgpu: Replace kref for refcounting in nvgpu
- added wrapper struct nvgpu_ref over nvgpu_atomic_t
- added nvgpu_ref_* APIs to access the above struct
JIRA NVGPU-140
Change-Id: Id47f897995dd4721751f7610b6d4d4fbfe4d6b9a
Signed-off-by: Debarshi Dutta <ddutta@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1540899
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svccoveritychecker <svccoveritychecker@nvidia.com>
GVS: Gerrit_Virtual_Submit
Reviewed-by: Konsta Holtta <kholtta@nvidia.com>
Reviewed-by: Vijayakumar Subbu <vsubbu@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/common/linux/vm.c')
-rw-r--r-- | drivers/gpu/nvgpu/common/linux/vm.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/gpu/nvgpu/common/linux/vm.c b/drivers/gpu/nvgpu/common/linux/vm.c index 3d1219b6..c84f531d 100644 --- a/drivers/gpu/nvgpu/common/linux/vm.c +++ b/drivers/gpu/nvgpu/common/linux/vm.c | |||
@@ -155,7 +155,7 @@ static u64 __nvgpu_vm_find_mapping(struct vm_gk20a *vm, | |||
155 | else | 155 | else |
156 | mapped_buffer->own_mem_ref = true; | 156 | mapped_buffer->own_mem_ref = true; |
157 | } | 157 | } |
158 | kref_get(&mapped_buffer->ref); | 158 | nvgpu_ref_get(&mapped_buffer->ref); |
159 | 159 | ||
160 | nvgpu_log(g, gpu_dbg_map, | 160 | nvgpu_log(g, gpu_dbg_map, |
161 | "gv: 0x%04x_%08x + 0x%-7zu " | 161 | "gv: 0x%04x_%08x + 0x%-7zu " |
@@ -380,7 +380,7 @@ u64 nvgpu_vm_map(struct vm_gk20a *vm, | |||
380 | mapped_buffer->user_mapped = user_mapped ? 1 : 0; | 380 | mapped_buffer->user_mapped = user_mapped ? 1 : 0; |
381 | mapped_buffer->own_mem_ref = user_mapped; | 381 | mapped_buffer->own_mem_ref = user_mapped; |
382 | nvgpu_init_list_node(&mapped_buffer->buffer_list); | 382 | nvgpu_init_list_node(&mapped_buffer->buffer_list); |
383 | kref_init(&mapped_buffer->ref); | 383 | nvgpu_ref_init(&mapped_buffer->ref); |
384 | 384 | ||
385 | err = nvgpu_insert_mapped_buf(vm, mapped_buffer); | 385 | err = nvgpu_insert_mapped_buf(vm, mapped_buffer); |
386 | if (err) { | 386 | if (err) { |
@@ -425,6 +425,6 @@ void nvgpu_vm_unmap(struct vm_gk20a *vm, u64 offset) | |||
425 | return; | 425 | return; |
426 | } | 426 | } |
427 | 427 | ||
428 | kref_put(&mapped_buffer->ref, gk20a_vm_unmap_locked_kref); | 428 | nvgpu_ref_put(&mapped_buffer->ref, gk20a_vm_unmap_locked_ref); |
429 | nvgpu_mutex_release(&vm->update_gmmu_lock); | 429 | nvgpu_mutex_release(&vm->update_gmmu_lock); |
430 | } | 430 | } |