[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAEkB2EQAgmZwGSRyo2XC-1+Ls2MDdm-fxLY5P1SRAjyhNeUiXQ@mail.gmail.com>
Date: Fri, 22 Nov 2019 11:43:48 -0600
From: Navid Emamdoost <navid.emamdoost@...il.com>
To: Marco Felsch <m.felsch@...gutronix.de>
Cc: Philipp Zabel <p.zabel@...gutronix.de>,
David Airlie <airlied@...ux.ie>,
Daniel Vetter <daniel@...ll.ch>,
Sascha Hauer <s.hauer@...gutronix.de>,
Shawn Guo <shawnguo@...nel.org>,
Fabio Estevam <festevam@...il.com>,
LKML <linux-kernel@...r.kernel.org>,
dri-devel@...ts.freedesktop.org,
Navid Emamdoost <emamd001@....edu>,
NXP Linux Team <linux-imx@....com>,
Pengutronix Kernel Team <kernel@...gutronix.de>,
linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH] drm/imx: fix memory leak in imx_pd_bind
Thanks for the update.
On Fri, Nov 22, 2019 at 1:22 AM Marco Felsch <m.felsch@...gutronix.de> wrote:
>
> Hi Navid,
>
> On 19-11-21 12:31, Navid Emamdoost wrote:
> > On Fri, Oct 4, 2019 at 2:09 PM Navid Emamdoost
> > <navid.emamdoost@...il.com> wrote:
> > >
> > > In imx_pd_bind, the duplicated memory for imxpd->edid via kmemdup should
> > > be released in drm_of_find_panel_or_bridge or imx_pd_register fail.
> > >
> > > Fixes: ebc944613567 ("drm: convert drivers to use drm_of_find_panel_or_bridge")
> > > Fixes: 19022aaae677 ("staging: drm/imx: Add parallel display support")
> > > Signed-off-by: Navid Emamdoost <navid.emamdoost@...il.com>
> > > ---
> >
> > Would you please review this patch?
> >
> > Thanks,
>
> I currently work on the drm/imx driver(s) to avoid errors like [1].
> Hopefully I have a working version till next week. There I fixed this
> issue by using the devm_kmemdup() and dropped the explicit kfree()
> within unbind().
>
> [1] https://www.spinics.net/lists/dri-devel/msg189388.html
>
> Regards,
> Marco
>
> >
> > > drivers/gpu/drm/imx/parallel-display.c | 8 ++++++--
> > > 1 file changed, 6 insertions(+), 2 deletions(-)
> > >
> > > diff --git a/drivers/gpu/drm/imx/parallel-display.c b/drivers/gpu/drm/imx/parallel-display.c
> > > index e7ce17503ae1..9522d2cb0ad5 100644
> > > --- a/drivers/gpu/drm/imx/parallel-display.c
> > > +++ b/drivers/gpu/drm/imx/parallel-display.c
> > > @@ -227,14 +227,18 @@ static int imx_pd_bind(struct device *dev, struct device *master, void *data)
> > >
> > > /* port@1 is the output port */
> > > ret = drm_of_find_panel_or_bridge(np, 1, 0, &imxpd->panel, &imxpd->bridge);
> > > - if (ret && ret != -ENODEV)
> > > + if (ret && ret != -ENODEV) {
> > > + kfree(imxpd->edid);
> > > return ret;
> > > + }
> > >
> > > imxpd->dev = dev;
> > >
> > > ret = imx_pd_register(drm, imxpd);
> > > - if (ret)
> > > + if (ret) {
> > > + kfree(imxpd->edid);
> > > return ret;
> > > + }
> > >
> > > dev_set_drvdata(dev, imxpd);
> > >
> > > --
> > > 2.17.1
> > >
> >
> >
> > --
> > Navid.
> >
> >
>
> --
> Pengutronix e.K. | |
> Steuerwalder Str. 21 | http://www.pengutronix.de/ |
> 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
> Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
--
Navid.
Powered by blists - more mailing lists