aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/bcm
diff options
context:
space:
mode:
authorKevin McKinney <klmckinney1@gmail.com>2011-12-01 22:02:15 -0500
committerGreg Kroah-Hartman <gregkh@suse.de>2011-12-08 12:42:15 -0800
commit09468b0392b1d2b079b334d60a23d7da8105dc53 (patch)
treeb073e5bad8d90cc1a02a0a6ccca5732efab41ac2 /drivers/staging/bcm
parentstaging/line6: refactor device information and add POD HD 500 (diff)
downloadlinux-dev-09468b0392b1d2b079b334d60a23d7da8105dc53.tar.xz
linux-dev-09468b0392b1d2b079b334d60a23d7da8105dc53.zip
Staging: bcm: Fix double free of 'pReadData' in IOCTL_BCM_NVM_WRITE.
This patch fixes a memory error in ioctl, IOCTL_BCM_NVM_WRITE. While copying data to user space, if an error occurs, pReadData is freed. Then, at the end of the ioctl, pReadData was being freed again. Signed-off-by: Kevin McKinney <klmckinney1@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/bcm')
-rw-r--r--drivers/staging/bcm/Bcmchar.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/staging/bcm/Bcmchar.c b/drivers/staging/bcm/Bcmchar.c
index 72a699c12704..ad1cc5598dca 100644
--- a/drivers/staging/bcm/Bcmchar.c
+++ b/drivers/staging/bcm/Bcmchar.c
@@ -1336,7 +1336,7 @@ cntrlEnd:
if (copy_to_user(stNVMReadWrite.pBuffer, pReadData, stNVMReadWrite.uiNumBytes)) {
kfree(pReadData);
- Status = -EFAULT;
+ return -EFAULT;
}
} else {
down(&Adapter->NVMRdmWrmLock);