From: Sachin Kamat <sachin.kamat@linaro.org>
Date: Mon, 19 Nov 2012 09:20:30 +0000 (+0530)
Subject: drm/exynos: Fix potential NULL pointer dereference in exynos_drm_encoder.c
X-Git-Tag: v3.8-rc1~82^2~13^2~27
X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=fdd66e06ce71cdcdb515ef355d4f2fc90e151503;p=linux.git

drm/exynos: Fix potential NULL pointer dereference in exynos_drm_encoder.c

Check overlay_ops is not NULL as checked in the previous 'if' condition.
Fixes the following smatch error:
drivers/gpu/drm/exynos/exynos_drm_encoder.c:509 exynos_drm_encoder_plane_disable()
error: we previously assumed 'overlay_ops' could be null (see line 499)

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
---

diff --git a/drivers/gpu/drm/exynos/exynos_drm_encoder.c b/drivers/gpu/drm/exynos/exynos_drm_encoder.c
index 607231a71b2d..f2df06c603f7 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_encoder.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_encoder.c
@@ -513,6 +513,6 @@ void exynos_drm_encoder_plane_disable(struct drm_encoder *encoder, void *data)
 	 * because the setting for disabling the overlay will be updated
 	 * at vsync.
 	 */
-	if (overlay_ops->wait_for_vblank)
+	if (overlay_ops && overlay_ops->wait_for_vblank)
 		overlay_ops->wait_for_vblank(manager->dev);
 }