From: Wei Yongjun Date: Mon, 3 Sep 2012 10:02:23 +0000 (+0800) Subject: staging: bcm: fix possible memory leak in bcm_char_ioctl() X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=dce15efebe76088dc381ab91156842ebf7c79aca;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git staging: bcm: fix possible memory leak in bcm_char_ioctl() psFwInfo has been allocated in this function and should be freed before leaving from the error handling cases. spatch with a semantic match is used to found this problem. (http://coccinelle.lip6.fr/) Signed-off-by: Wei Yongjun Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/bcm/Bcmchar.c b/drivers/staging/bcm/Bcmchar.c index cf411d1706b1..3d02c2ebfb8d 100644 --- a/drivers/staging/bcm/Bcmchar.c +++ b/drivers/staging/bcm/Bcmchar.c @@ -820,6 +820,7 @@ cntrlEnd: if (copy_from_user(psFwInfo, IoBuffer.InputBuffer, IoBuffer.InputLength)) { up(&Adapter->fw_download_sema); + kfree(psFwInfo); return -EFAULT; } @@ -829,6 +830,7 @@ cntrlEnd: BCM_DEBUG_PRINT(Adapter, DBG_TYPE_PRINTK, 0, 0, "Something else is wrong %lu\n", psFwInfo->u32FirmwareLength); up(&Adapter->fw_download_sema); + kfree(psFwInfo); Status = -EINVAL; return Status; }