diff mbox series

rpmsg: char: release allocated memory

Message ID 20190917033124.1077-1-navid.emamdoost@gmail.com (mailing list archive)
State Mainlined
Commit bbe692e349e2a1edf3fe0a29a0e05899c9c94d51
Headers show
Series rpmsg: char: release allocated memory | expand

Commit Message

Navid Emamdoost Sept. 17, 2019, 3:31 a.m. UTC
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>
---
 drivers/rpmsg/rpmsg_char.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

Comments

Navid Emamdoost Nov. 21, 2019, 6:20 p.m. UTC | #1
On Mon, Sep 16, 2019 at 10:31 PM Navid Emamdoost
<navid.emamdoost@gmail.com> wrote:
>
> 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>

Would you please review this patch?

Thank you,

> ---
>  drivers/rpmsg/rpmsg_char.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/rpmsg/rpmsg_char.c b/drivers/rpmsg/rpmsg_char.c
> index eea5ebbb5119..c655074c07c2 100644
> --- a/drivers/rpmsg/rpmsg_char.c
> +++ b/drivers/rpmsg/rpmsg_char.c
> @@ -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;
> --
> 2.17.1
>
Bjorn Andersson Nov. 21, 2019, 11:35 p.m. UTC | #2
On Thu 21 Nov 10:20 PST 2019, Navid Emamdoost wrote:

> On Mon, Sep 16, 2019 at 10:31 PM Navid Emamdoost
> <navid.emamdoost@gmail.com> wrote:
> >
> > 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>
> 
> Would you please review this patch?
> 

I'm sorry, I must have missed to reply as I applied the patch. You can
find it in the rpmsg-next branch [1] and it will be part of the pull
request for v5.5

[1] https://git.kernel.org/pub/scm/linux/kernel/git/andersson/remoteproc.git/log/?h=rpmsg-next

Regards,
Bjorn

> Thank you,
> 
> > ---
> >  drivers/rpmsg/rpmsg_char.c | 6 ++++--
> >  1 file changed, 4 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/rpmsg/rpmsg_char.c b/drivers/rpmsg/rpmsg_char.c
> > index eea5ebbb5119..c655074c07c2 100644
> > --- a/drivers/rpmsg/rpmsg_char.c
> > +++ b/drivers/rpmsg/rpmsg_char.c
> > @@ -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;
> > --
> > 2.17.1
> >
> 
> 
> -- 
> Navid.
Navid Emamdoost Nov. 21, 2019, 11:54 p.m. UTC | #3
Thanks for the update.

On Thu, Nov 21, 2019 at 5:35 PM Bjorn Andersson
<bjorn.andersson@linaro.org> wrote:
>
> On Thu 21 Nov 10:20 PST 2019, Navid Emamdoost wrote:
>
> > On Mon, Sep 16, 2019 at 10:31 PM Navid Emamdoost
> > <navid.emamdoost@gmail.com> wrote:
> > >
> > > 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>
> >
> > Would you please review this patch?
> >
>
> I'm sorry, I must have missed to reply as I applied the patch. You can
> find it in the rpmsg-next branch [1] and it will be part of the pull
> request for v5.5
>
> [1] https://git.kernel.org/pub/scm/linux/kernel/git/andersson/remoteproc.git/log/?h=rpmsg-next
>
> Regards,
> Bjorn
>
> > Thank you,
> >
> > > ---
> > >  drivers/rpmsg/rpmsg_char.c | 6 ++++--
> > >  1 file changed, 4 insertions(+), 2 deletions(-)
> > >
> > > diff --git a/drivers/rpmsg/rpmsg_char.c b/drivers/rpmsg/rpmsg_char.c
> > > index eea5ebbb5119..c655074c07c2 100644
> > > --- a/drivers/rpmsg/rpmsg_char.c
> > > +++ b/drivers/rpmsg/rpmsg_char.c
> > > @@ -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;
> > > --
> > > 2.17.1
> > >
> >
> >
> > --
> > Navid.
diff mbox series

Patch

diff --git a/drivers/rpmsg/rpmsg_char.c b/drivers/rpmsg/rpmsg_char.c
index eea5ebbb5119..c655074c07c2 100644
--- a/drivers/rpmsg/rpmsg_char.c
+++ b/drivers/rpmsg/rpmsg_char.c
@@ -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;