Messages in this thread Patch in this message | | | From | Sudip Mukherjee <> | Subject | [PATCH v2 1/5] lightnvm: fix memory leak | Date | Tue, 24 Nov 2015 16:04:56 +0530 |
| |
If copy_to_user() fails we returned error but we missed releasing devices.
Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org> ---
v1 on fixed one error. v2 fixes both.
drivers/lightnvm/core.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/drivers/lightnvm/core.c b/drivers/lightnvm/core.c index f659e60..e338048 100644 --- a/drivers/lightnvm/core.c +++ b/drivers/lightnvm/core.c @@ -677,8 +677,10 @@ static long nvm_ioctl_info(struct file *file, void __user *arg) info->tgtsize = tgt_iter; up_write(&nvm_lock); - if (copy_to_user(arg, info, sizeof(struct nvm_ioctl_info))) + if (copy_to_user(arg, info, sizeof(struct nvm_ioctl_info))) { + kfree(info); return -EFAULT; + } kfree(info); return 0; @@ -721,8 +723,11 @@ static long nvm_ioctl_get_devices(struct file *file, void __user *arg) devices->nr_devices = i; - if (copy_to_user(arg, devices, sizeof(struct nvm_ioctl_get_devices))) + if (copy_to_user(arg, devices, + sizeof(struct nvm_ioctl_get_devices))) { + kfree(devices); return -EFAULT; + } kfree(devices); return 0; -- 1.9.1
| |