diff options
author | Prabhu Sundararaj <prabhu.sundararaj@nxp.com> | 2016-09-13 10:30:18 -0500 |
---|---|---|
committer | Prabhu Sundararaj <prabhu.sundararaj@nxp.com> | 2016-09-13 10:30:18 -0500 |
commit | 094928edf1bc194f25f302a0059ac87b409c5328 (patch) | |
tree | 6f4d913911d2fbee5b64e0e8b9098087d37ff815 /drivers/mxc | |
parent | 25bb16c5840443e8711732aef26fd46bc1e38582 (diff) |
MGS-2243 [#imx-180] Fix high impact Coverity issue in GPU kernel driver
Fix high impact Coverity issue in GPU kernel driver
Date: Sep 13, 2016
Signed-off-by: Yuchou Gan <yuchou.gan@nxp.com>
Diffstat (limited to 'drivers/mxc')
5 files changed, 20 insertions, 0 deletions
diff --git a/drivers/mxc/gpu-viv/hal/kernel/gc_hal_kernel_db.c b/drivers/mxc/gpu-viv/hal/kernel/gc_hal_kernel_db.c index 2cf92fe30265..f78e9c5eebe3 100644 --- a/drivers/mxc/gpu-viv/hal/kernel/gc_hal_kernel_db.c +++ b/drivers/mxc/gpu-viv/hal/kernel/gc_hal_kernel_db.c @@ -156,6 +156,11 @@ gckKERNEL_NewDatabase( return gcvSTATUS_OK; OnError: + if (pointer) + { + gcmkVERIFY_OK(gckOS_Free(Kernel->os,pointer)); + } + if (acquired) { /* Release the database mutex. */ diff --git a/drivers/mxc/gpu-viv/hal/kernel/gc_hal_kernel_video_memory.c b/drivers/mxc/gpu-viv/hal/kernel/gc_hal_kernel_video_memory.c index 0b60a0aec3db..1b0d542e2a9e 100644 --- a/drivers/mxc/gpu-viv/hal/kernel/gc_hal_kernel_video_memory.c +++ b/drivers/mxc/gpu-viv/hal/kernel/gc_hal_kernel_video_memory.c @@ -2641,6 +2641,7 @@ gckVIDMEM_NODE_Dereference( #endif gcmkVERIFY_OK(gckOS_DeleteMutex(Kernel->os, Node->mutex)); gcmkOS_SAFE_FREE(Kernel->os, Node); + Node = NULL; } gcmkFOOTER_NO(); diff --git a/drivers/mxc/gpu-viv/hal/os/linux/kernel/allocator/default/gc_hal_kernel_allocator_dmabuf.c b/drivers/mxc/gpu-viv/hal/os/linux/kernel/allocator/default/gc_hal_kernel_allocator_dmabuf.c index 43203f7bc6e4..cea2e8b3622e 100644 --- a/drivers/mxc/gpu-viv/hal/os/linux/kernel/allocator/default/gc_hal_kernel_allocator_dmabuf.c +++ b/drivers/mxc/gpu-viv/hal/os/linux/kernel/allocator/default/gc_hal_kernel_allocator_dmabuf.c @@ -164,6 +164,11 @@ _DmabufAttach( return gcvSTATUS_OK; OnError: + if(pagearray) + { + gcmkVERIFY_OK(gckOS_Free(os, (gctPOINTER)pagearray)); + } + gcmkFOOTER(); return status; } diff --git a/drivers/mxc/gpu-viv/hal/os/linux/kernel/allocator/freescale/gc_hal_kernel_allocator_cma.c b/drivers/mxc/gpu-viv/hal/os/linux/kernel/allocator/freescale/gc_hal_kernel_allocator_cma.c index a0d784090346..7d759ff2f712 100644 --- a/drivers/mxc/gpu-viv/hal/os/linux/kernel/allocator/freescale/gc_hal_kernel_allocator_cma.c +++ b/drivers/mxc/gpu-viv/hal/os/linux/kernel/allocator/freescale/gc_hal_kernel_allocator_cma.c @@ -441,6 +441,11 @@ _CMAFSLAlloctorInit( return gcvSTATUS_OK; OnError: + if(allocator) + { + gcmkVERIFY_OK(gckOS_Free(Os, (gctPOINTER)allocator)); + } + return status; } diff --git a/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_allocator.c b/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_allocator.c index 93d6fa82958e..55de406767d6 100644 --- a/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_allocator.c +++ b/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_allocator.c @@ -799,6 +799,10 @@ _DefaultAlloctorInit( return gcvSTATUS_OK; OnError: + if(allocator) + { + gcmkVERIFY_OK(gckOS_Free(Os, (gctPOINTER)allocator)); + } return status; } |