Hi Suman, > -----Original Message----- > From: Suman Anna <s-anna@xxxxxx> > Sent: Thursday, July 26, 2018 12:37 AM > To: Loic PALLARDY <loic.pallardy@xxxxxx>; bjorn.andersson@xxxxxxxxxx; > ohad@xxxxxxxxxx > Cc: linux-remoteproc@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; > Arnaud POULIQUEN <arnaud.pouliquen@xxxxxx>; > benjamin.gaignard@xxxxxxxxxx > Subject: Re: [PATCH 1/1] rpmsg: virtio_rpmsg_bus: Fix > rpmsg_create_channel memory leak > > Hi Loic, > > On 07/25/2018 04:08 PM, Loic Pallardy wrote: > > In case of rpmsg_register_device() failure, vch previously > > allocated must be free. > > > > Isn't this already handled through the virtio_rpmsg_release_device() > callback as part of the put_device() in rpmsg_register_device() failure. Yes you're right, put_device() is doing the job. Please forget this patch. Regards, Loic > > regards > Suman > > > fixes: 6eed598a0491 ("rpmsg: Split off generic tail of create_channel()") > > > > Signed-off-by: Loic Pallardy <loic.pallardy@xxxxxx> > > --- > > drivers/rpmsg/virtio_rpmsg_bus.c | 4 +++- > > 1 file changed, 3 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/rpmsg/virtio_rpmsg_bus.c > b/drivers/rpmsg/virtio_rpmsg_bus.c > > index 664f957..10f927e 100644 > > --- a/drivers/rpmsg/virtio_rpmsg_bus.c > > +++ b/drivers/rpmsg/virtio_rpmsg_bus.c > > @@ -431,8 +431,10 @@ static struct rpmsg_device > *rpmsg_create_channel(struct virtproc_info *vrp, > > rpdev->dev.parent = &vrp->vdev->dev; > > rpdev->dev.release = virtio_rpmsg_release_device; > > ret = rpmsg_register_device(rpdev); > > - if (ret) > > + if (ret) { > > + kfree(vch); > > return NULL; > > + } > > > > return rpdev; > > } > > ��.n��������+%������w��{.n�����{�����ש����{ay�ʇڙ���f���h������_�(�階�ݢj"��������G����?���&��