]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commitdiff
rpmsg: char: release allocated memory
authorNavid Emamdoost <navid.emamdoost@gmail.com>
Tue, 17 Sep 2019 03:31:23 +0000 (22:31 -0500)
committerBjorn Andersson <bjorn.andersson@linaro.org>
Sat, 5 Oct 2019 04:13:47 +0000 (21:13 -0700)
In rpmsg_eptdev_write_iter, if copy_from_iter_full fails the allocated
buffer needs to be released.

Signed-off-by: Navid Emamdoost <navid.emamdoost@gmail.com>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
drivers/rpmsg/rpmsg_char.c

index eea5ebbb5119a85eb12b1ca550ea93b75ed88c8f..c655074c07c2ec063410c20f3b32c131af84c0a7 100644 (file)
@@ -227,8 +227,10 @@ static ssize_t rpmsg_eptdev_write_iter(struct kiocb *iocb,
        if (!kbuf)
                return -ENOMEM;
 
-       if (!copy_from_iter_full(kbuf, len, from))
-               return -EFAULT;
+       if (!copy_from_iter_full(kbuf, len, from)) {
+               ret = -EFAULT;
+               goto free_kbuf;
+       }
 
        if (mutex_lock_interruptible(&eptdev->ept_lock)) {
                ret = -ERESTARTSYS;