drm/exynos: fix checks for valid mixer window
authorKrzysztof Kozlowski <k.kozlowski@samsung.com>
Mon, 27 May 2013 06:00:43 +0000 (15:00 +0900)
committerInki Dae <daeinki@gmail.com>
Fri, 28 Jun 2013 12:11:48 +0000 (21:11 +0900)
Valid values for mixer window are from 0 to MIXER_WIN_NR-1 inclusive.
Arrays in structures (e.g. mixer_context.win_data) have size of
MIXER_WIN_NR so checks for wrong mixer window must be greater-equal.

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Hyunhee Kim <hyunhee.kim@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
drivers/gpu/drm/exynos/exynos_drm_hdmi.c
drivers/gpu/drm/exynos/exynos_mixer.c

index 437fb947e46dbce4a0b510710649eba8e5a3c6a8..b9b27265d0b132bb1c1c911fe1054cdfc5e1843f 100644 (file)
@@ -344,7 +344,7 @@ static void drm_mixer_commit(struct device *subdrv_dev, int zpos)
 
        DRM_DEBUG_KMS("%s\n", __FILE__);
 
-       if (win < 0 || win > MIXER_WIN_NR) {
+       if (win < 0 || win >= MIXER_WIN_NR) {
                DRM_ERROR("mixer window[%d] is wrong\n", win);
                return;
        }
@@ -362,7 +362,7 @@ static void drm_mixer_disable(struct device *subdrv_dev, int zpos)
 
        DRM_DEBUG_KMS("%s\n", __FILE__);
 
-       if (win < 0 || win > MIXER_WIN_NR) {
+       if (win < 0 || win >= MIXER_WIN_NR) {
                DRM_ERROR("mixer window[%d] is wrong\n", win);
                return;
        }
index 7c197d3820c5583c2023831f9df5b1c7d5891f73..3658e0743487de913719f01a5f1947692dc0f602 100644 (file)
@@ -742,7 +742,7 @@ static void mixer_win_mode_set(void *ctx,
        if (win == DEFAULT_ZPOS)
                win = MIXER_DEFAULT_WIN;
 
-       if (win < 0 || win > MIXER_WIN_NR) {
+       if (win < 0 || win >= MIXER_WIN_NR) {
                DRM_ERROR("mixer window[%d] is wrong\n", win);
                return;
        }