Message ID | 20190610135739.6077-1-tomi.valkeinen@ti.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [1/2] drm/bridge: tfp410: fix memleak in get_modes() | expand |
On 10.06.2019 15:57, Tomi Valkeinen wrote: > We don't free the edid blob allocated by the call to drm_get_edid(), > causing a memleak. Fix this by calling kfree(edid) at the end of the > get_modes(). > > Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Queued both patches to drm-misc-fixes. -- Regards Andrzej > --- > drivers/gpu/drm/bridge/ti-tfp410.c | 7 ++++++- > 1 file changed, 6 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/bridge/ti-tfp410.c b/drivers/gpu/drm/bridge/ti-tfp410.c > index 8b0e71bd3ca7..9f0836cc712b 100644 > --- a/drivers/gpu/drm/bridge/ti-tfp410.c > +++ b/drivers/gpu/drm/bridge/ti-tfp410.c > @@ -70,7 +70,12 @@ static int tfp410_get_modes(struct drm_connector *connector) > > drm_connector_update_edid_property(connector, edid); > > - return drm_add_edid_modes(connector, edid); > + ret = drm_add_edid_modes(connector, edid); > + > + kfree(edid); > + > + return ret; > + > fallback: > /* No EDID, fallback on the XGA standard modes */ > ret = drm_add_modes_noedid(connector, 1920, 1200);
diff --git a/drivers/gpu/drm/bridge/ti-tfp410.c b/drivers/gpu/drm/bridge/ti-tfp410.c index 8b0e71bd3ca7..9f0836cc712b 100644 --- a/drivers/gpu/drm/bridge/ti-tfp410.c +++ b/drivers/gpu/drm/bridge/ti-tfp410.c @@ -70,7 +70,12 @@ static int tfp410_get_modes(struct drm_connector *connector) drm_connector_update_edid_property(connector, edid); - return drm_add_edid_modes(connector, edid); + ret = drm_add_edid_modes(connector, edid); + + kfree(edid); + + return ret; + fallback: /* No EDID, fallback on the XGA standard modes */ ret = drm_add_modes_noedid(connector, 1920, 1200);
We don't free the edid blob allocated by the call to drm_get_edid(), causing a memleak. Fix this by calling kfree(edid) at the end of the get_modes(). Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> --- drivers/gpu/drm/bridge/ti-tfp410.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)