aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video/sh_mobile_hdmi.c
diff options
context:
space:
mode:
authorGuennadi Liakhovetski <g.liakhovetski@gmx.de>2010-11-04 11:05:55 +0000
committerPaul Mundt <lethal@linux-sh.org>2010-11-10 16:53:12 +0900
commit91d63f8a306722dbf1b400d4afb11f69512977ad (patch)
tree42476b3fc65b4e3efbcb43f635c01c0894b352ba /drivers/video/sh_mobile_hdmi.c
parenta7bcf21e60c73cb7f7c13fad928967d7e47c3cac (diff)
downloadkernel_samsung_smdk4412-91d63f8a306722dbf1b400d4afb11f69512977ad.zip
kernel_samsung_smdk4412-91d63f8a306722dbf1b400d4afb11f69512977ad.tar.gz
kernel_samsung_smdk4412-91d63f8a306722dbf1b400d4afb11f69512977ad.tar.bz2
fbdev: sh_mobile_hdmi: properly clean up modedb on monitor unplug
Even though this is not a problem currently, it is better to clear the freed pointer and nullify the length of the freed memory. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'drivers/video/sh_mobile_hdmi.c')
-rw-r--r--drivers/video/sh_mobile_hdmi.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/video/sh_mobile_hdmi.c b/drivers/video/sh_mobile_hdmi.c
index 55b3077..d7df103 100644
--- a/drivers/video/sh_mobile_hdmi.c
+++ b/drivers/video/sh_mobile_hdmi.c
@@ -1071,6 +1071,10 @@ static void sh_hdmi_edid_work_fn(struct work_struct *work)
if (!hdmi->info)
goto out;
+ hdmi->monspec.modedb_len = 0;
+ fb_destroy_modedb(hdmi->monspec.modedb);
+ hdmi->monspec.modedb = NULL;
+
acquire_console_sem();
/* HDMI disconnect */
@@ -1078,7 +1082,6 @@ static void sh_hdmi_edid_work_fn(struct work_struct *work)
release_console_sem();
pm_runtime_put(hdmi->dev);
- fb_destroy_modedb(hdmi->monspec.modedb);
}
out: