diff options
author | Konsta Holtta <kholtta@nvidia.com> | 2018-03-22 12:25:05 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2018-03-23 20:16:57 -0400 |
commit | 90925a739ab80a93c6a325c12a61752c24339089 (patch) | |
tree | 75c2ae029a18beef5b15481c19c4f157214179c4 /drivers/gpu/nvgpu/include | |
parent | b5b4353ca6cc9b6457ddccc00bf87538291870fc (diff) |
gpu: nvgpu: check sema pool alloc failure properly
nvgpu_semaphore_pool_alloc() returns an ERR_PTR instead of NULL which
the caller checks on failure. Common code should not use ERR_PTRs
though, so modify nvgpu_semaphore_pool_alloc() to return error code
separately and fix nvgpu_init_sema_pool() to consider this.
Jira NVGPU-513
Change-Id: I435c0d2794d226774ed4c6b3bcbdde1e741854d8
Signed-off-by: Konsta Holtta <kholtta@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1673458
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/include')
-rw-r--r-- | drivers/gpu/nvgpu/include/nvgpu/semaphore.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/include/nvgpu/semaphore.h b/drivers/gpu/nvgpu/include/nvgpu/semaphore.h index e66b2188..771cc7e1 100644 --- a/drivers/gpu/nvgpu/include/nvgpu/semaphore.h +++ b/drivers/gpu/nvgpu/include/nvgpu/semaphore.h | |||
@@ -173,8 +173,8 @@ struct nvgpu_semaphore_sea *nvgpu_semaphore_get_sea(struct gk20a *g); | |||
173 | /* | 173 | /* |
174 | * Semaphore pool functions. | 174 | * Semaphore pool functions. |
175 | */ | 175 | */ |
176 | struct nvgpu_semaphore_pool *nvgpu_semaphore_pool_alloc( | 176 | int nvgpu_semaphore_pool_alloc(struct nvgpu_semaphore_sea *sea, |
177 | struct nvgpu_semaphore_sea *sea); | 177 | struct nvgpu_semaphore_pool **pool); |
178 | int nvgpu_semaphore_pool_map(struct nvgpu_semaphore_pool *pool, | 178 | int nvgpu_semaphore_pool_map(struct nvgpu_semaphore_pool *pool, |
179 | struct vm_gk20a *vm); | 179 | struct vm_gk20a *vm); |
180 | void nvgpu_semaphore_pool_unmap(struct nvgpu_semaphore_pool *pool, | 180 | void nvgpu_semaphore_pool_unmap(struct nvgpu_semaphore_pool *pool, |