]> rtime.felk.cvut.cz Git - zynq/linux.git/commitdiff
drm: xlnx: scaler: Fix array out of bound access
authorVishal Sagar <vishal.sagar@xilinx.com>
Fri, 28 Sep 2018 05:35:07 +0000 (11:05 +0530)
committerMichal Simek <michal.simek@xilinx.com>
Wed, 7 Nov 2018 10:05:10 +0000 (11:05 +0100)
This patch fixes random kernel crashes observed due to accessing and
modifying the out of bound address of the vertical scaler coefficients
array.

Signed-off-by: Vishal Sagar <vishal.sagar@xilinx.com>
Reviewed-by: Hyun Kwon <hyun.kwon@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
drivers/gpu/drm/xlnx/xlnx_scaler.c

index d96ddeb49b5972072a3f8c833285ca70a64d0f81..0c13d3cd572803d4da212047517a7d4598d291db 100644 (file)
@@ -1059,10 +1059,11 @@ xv_vscaler_load_ext_coeff(struct xilinx_scaler *scaler,
                        /* pad left */
                        for (j = 0; j < offset; j++)
                                scaler->vscaler_coeff[i][j] = 0;
+                       /* pad right */
+                       j = ntaps + offset;
+                       for (; j < XV_VSCALER_MAX_V_TAPS; j++)
+                               scaler->vscaler_coeff[i][j] = 0;
                }
-               /* pad right */
-               for (j = (ntaps + offset); j < XV_VSCALER_MAX_V_TAPS; j++)
-                       scaler->vscaler_coeff[i][j] = 0;
        }
 }