[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20151106102538.GA2036@shlinux2>
Date: Fri, 6 Nov 2015 18:25:39 +0800
From: Liu Ying <Ying.Liu@...escale.com>
To: Philipp Zabel <p.zabel@...gutronix.de>
CC: <dri-devel@...ts.freedesktop.org>, <linux-kernel@...r.kernel.org>,
<airlied@...ux.ie>
Subject: Re: [PATCH 1/2] drm/imx: ipuv3-crtc: Return error if
ipu_plane_init() fails for primary plane
On Fri, Nov 06, 2015 at 11:05:54AM +0100, Philipp Zabel wrote:
> Hi Liu,
>
> Am Mittwoch, den 04.11.2015, 18:15 +0800 schrieb Liu Ying:
> > For primary plane initialization failure cases, ipu_plane_init() may return
> > a pointer encoded by ERR_PTR(). So, we should bailout instead of use that
> > pointer blindly.
> >
> > Signed-off-by: Liu Ying <Ying.Liu@...escale.com>
> > ---
> > drivers/gpu/drm/imx/ipuv3-crtc.c | 4 ++++
> > 1 file changed, 4 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/imx/ipuv3-crtc.c b/drivers/gpu/drm/imx/ipuv3-crtc.c
> > index 7bc8301..8d68697 100644
> > --- a/drivers/gpu/drm/imx/ipuv3-crtc.c
> > +++ b/drivers/gpu/drm/imx/ipuv3-crtc.c
> > @@ -370,6 +370,10 @@ static int ipu_crtc_init(struct ipu_crtc *ipu_crtc,
> > id = imx_drm_crtc_id(ipu_crtc->imx_crtc);
> > ipu_crtc->plane[0] = ipu_plane_init(ipu_crtc->base.dev, ipu,
> > pdata->dma[0], dp, BIT(id), true);
> > + if (IS_ERR(ipu_crtc->plane[0])) {
> > + ret = PTR_ERR(ipu_crtc->plane[0]);
> > + goto err_put_resources;
>
> That should be "goto err_remove_crtc;"
Ah, yes, you're right. I'll fix this.
BTW, there is nothing to free the ipu_plane allocated in ipu_plane_init() in
case something goes wrong after ipu_plane_init(). Of course, we may fix this
with another patch.
Thanks,
Liu Ying
>
> regards
> Philipp
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists