From: Andrzej Hajda Date: Thu, 9 Jul 2015 06:25:38 +0000 (+0200) Subject: drm/exynos/hdmi: fix edid memory leak X-Git-Tag: submit/tizen/20161116.232344~12 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=4ddbe83b72cfb3ce77e6b94d2e3cb35bd067b173;p=platform%2Fkernel%2Flinux-exynos.git drm/exynos/hdmi: fix edid memory leak edid returned by drm_get_edid should be freed. The patch fixes it. Change-Id: Ied8d60b6a1e12409037defb04be4bcf0c906690d Signed-off-by: Andrzej Hajda Reviewed-by: Joonyoung Shim Signed-off-by: Inki Dae --- diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c b/drivers/gpu/drm/exynos/exynos_hdmi.c index 35517a890439..96ca55b241c9 100644 --- a/drivers/gpu/drm/exynos/exynos_hdmi.c +++ b/drivers/gpu/drm/exynos/exynos_hdmi.c @@ -916,6 +916,7 @@ static int hdmi_get_modes(struct drm_connector *connector) { struct hdmi_context *hdata = ctx_from_connector(connector); struct edid *edid; + int ret; if (!hdata->ddc_adpt) return -ENODEV; @@ -931,7 +932,11 @@ static int hdmi_get_modes(struct drm_connector *connector) drm_mode_connector_update_edid_property(connector, edid); - return drm_add_edid_modes(connector, edid); + ret = drm_add_edid_modes(connector, edid); + + kfree(edid); + + return ret; } static int hdmi_find_phy_conf(struct hdmi_context *hdata, u32 pixel_clock)