summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/semaphore_gk20a.c
diff options
context:
space:
mode:
authorTerje Bergstrom <tbergstrom@nvidia.com>2014-10-07 08:02:35 -0400
committerDan Willemsen <dwillemsen@nvidia.com>2015-03-18 15:12:15 -0400
commit1d9fba8804fb811771eac0f68f334f51f101ed01 (patch)
tree0be143d6fd550db0e4aba15e2ae4d76117d37ad8 /drivers/gpu/nvgpu/gk20a/semaphore_gk20a.c
parentc0668f05ea1e2429444d6aad2a40dda81aba7ec8 (diff)
gpu: nvgpu: Per-alloc alignment
Change-Id: I8b7e86afb68adf6dd33b05995d0978f42d57e7b7 Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com> Reviewed-on: http://git-master/r/554185 GVS: Gerrit_Virtual_Submit
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/semaphore_gk20a.c')
-rw-r--r--drivers/gpu/nvgpu/gk20a/semaphore_gk20a.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/semaphore_gk20a.c b/drivers/gpu/nvgpu/gk20a/semaphore_gk20a.c
index 493c7b63..04f61c58 100644
--- a/drivers/gpu/nvgpu/gk20a/semaphore_gk20a.c
+++ b/drivers/gpu/nvgpu/gk20a/semaphore_gk20a.c
@@ -45,7 +45,7 @@ struct gk20a_semaphore_pool *gk20a_semaphore_pool_alloc(struct device *d,
45 goto clean_up; 45 goto clean_up;
46 46
47 if (gk20a_allocator_init(&p->alloc, unique_name, 0, 47 if (gk20a_allocator_init(&p->alloc, unique_name, 0,
48 p->size, SEMAPHORE_SIZE)) 48 p->size))
49 goto clean_up; 49 goto clean_up;
50 50
51 gk20a_dbg_info("cpuva=%p iova=%llx phys=%llx", p->cpu_va, 51 gk20a_dbg_info("cpuva=%p iova=%llx phys=%llx", p->cpu_va,
@@ -163,7 +163,8 @@ struct gk20a_semaphore *gk20a_semaphore_alloc(struct gk20a_semaphore_pool *pool)
163 if (!s) 163 if (!s)
164 return NULL; 164 return NULL;
165 165
166 if (pool->alloc.alloc(&pool->alloc, &s->offset, SEMAPHORE_SIZE)) { 166 if (pool->alloc.alloc(&pool->alloc, &s->offset, SEMAPHORE_SIZE,
167 SEMAPHORE_SIZE)) {
167 gk20a_err(pool->dev, "failed to allocate semaphore"); 168 gk20a_err(pool->dev, "failed to allocate semaphore");
168 kfree(s); 169 kfree(s);
169 return NULL; 170 return NULL;
@@ -185,7 +186,8 @@ static void gk20a_semaphore_free(struct kref *ref)
185 struct gk20a_semaphore *s = 186 struct gk20a_semaphore *s =
186 container_of(ref, struct gk20a_semaphore, ref); 187 container_of(ref, struct gk20a_semaphore, ref);
187 188
188 s->pool->alloc.free(&s->pool->alloc, s->offset, SEMAPHORE_SIZE); 189 s->pool->alloc.free(&s->pool->alloc, s->offset, SEMAPHORE_SIZE,
190 SEMAPHORE_SIZE);
189 gk20a_semaphore_pool_put(s->pool); 191 gk20a_semaphore_pool_put(s->pool);
190 kfree(s); 192 kfree(s);
191} 193}