[PATCH] intel, gma500, lvds: Fix use after free and mem leak in psb_intel_lvds_init()

Jesper Juhl jj at chaosbits.net
Tue Jan 17 15:20:03 PST 2012


On Tue, 17 Jan 2012, Patrik Jakobsson wrote:

> On Sat, Jan 14, 2012 at 10:15 PM, Jesper Juhl wrote:
> > In psb_intel_lvds_init(), if we fail to allocate memory for
> > 'psb_intel_connector' we free the memory we previously allocated for
> > 'psb_intel_encoder', but we then proceed to use that free'd pointer
> > when we do 'psb_intel_encoder->dev_priv = lvds_priv;'.
> >
> > We may also leak the memory we allocated for 'psb_intel_encoder' if we
> > 'goto failed_connector;' and the variable goes out of scope.
> >
> > While I was there anyway, I also removed the pointless 'if
> > (psb_intel_connector)' before freeing it at the 'failed_connector:'
> > label - kfree() deals gracefully with NULL pointers, so it is not
> > needed.
> 
> My bad, thanks for fixing

No problem :-) Now I just hope that it will get merged :-)

-- 
Jesper Juhl <jj at chaosbits.net>       http://www.chaosbits.net/
Don't top-post http://www.catb.org/jargon/html/T/top-post.html
Plain text mails only, please.



More information about the dri-devel mailing list