Эх сурвалжийг харах

drm/imx: parallel-display: fix imxpd-->edid memleak

If edid was allocated during bind, it must be freed again during unbind.

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Peter Seiderer 11 жил өмнө
parent
commit
dcbc9eb191

+ 3 - 0
drivers/gpu/drm/imx/parallel-display.c

@@ -257,6 +257,8 @@ static void imx_pd_unbind(struct device *dev, struct device *master,
 
 
 	imxpd->encoder.funcs->destroy(&imxpd->encoder);
 	imxpd->encoder.funcs->destroy(&imxpd->encoder);
 	imxpd->connector.funcs->destroy(&imxpd->connector);
 	imxpd->connector.funcs->destroy(&imxpd->connector);
+
+	kfree(imxpd->edid);
 }
 }
 
 
 static const struct component_ops imx_pd_ops = {
 static const struct component_ops imx_pd_ops = {
@@ -272,6 +274,7 @@ static int imx_pd_probe(struct platform_device *pdev)
 static int imx_pd_remove(struct platform_device *pdev)
 static int imx_pd_remove(struct platform_device *pdev)
 {
 {
 	component_del(&pdev->dev, &imx_pd_ops);
 	component_del(&pdev->dev, &imx_pd_ops);
+
 	return 0;
 	return 0;
 }
 }