summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/gpu/nvgpu/gk20a/mm_gk20a.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/mm_gk20a.c b/drivers/gpu/nvgpu/gk20a/mm_gk20a.c
index b01efd41..71b14d5b 100644
--- a/drivers/gpu/nvgpu/gk20a/mm_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/mm_gk20a.c
@@ -1,7 +1,7 @@
1/* 1/*
2 * GK20A memory management 2 * GK20A memory management
3 * 3 *
4 * Copyright (c) 2011-2014, NVIDIA CORPORATION. All rights reserved. 4 * Copyright (c) 2011-2015, NVIDIA CORPORATION. All rights reserved.
5 * 5 *
6 * This program is free software; you can redistribute it and/or modify it 6 * This program is free software; you can redistribute it and/or modify it
7 * under the terms and conditions of the GNU General Public License, 7 * under the terms and conditions of the GNU General Public License,
@@ -2474,12 +2474,13 @@ int gk20a_vm_free_space(struct gk20a_as_share *as_share,
2474 if (va_node) { 2474 if (va_node) {
2475 struct mapped_buffer_node *buffer, *n; 2475 struct mapped_buffer_node *buffer, *n;
2476 2476
2477 /* there is no need to unallocate the buffers in va. Just 2477 /* Decrement the ref count on all buffers in this va_node. This
2478 * convert them into normal buffers */ 2478 * allows userspace to let the kernel free mappings that are
2479 2479 * only used by this va_node. */
2480 list_for_each_entry_safe(buffer, n, 2480 list_for_each_entry_safe(buffer, n,
2481 &va_node->va_buffers_list, va_buffers_list) { 2481 &va_node->va_buffers_list, va_buffers_list) {
2482 list_del_init(&buffer->va_buffers_list); 2482 list_del_init(&buffer->va_buffers_list);
2483 kref_put(&buffer->ref, gk20a_vm_unmap_locked_kref);
2483 } 2484 }
2484 2485
2485 list_del(&va_node->reserved_va_list); 2486 list_del(&va_node->reserved_va_list);