[PATCH] drm/imx: fix out of bounds array access warning

Liu Ying victor.liu at nxp.com
Wed Mar 24 03:03:52 GMT 2021


Hi Fabio,

On Tue, 2021-03-23 at 11:02 -0300, Fabio Estevam wrote:
> Hi Arnd,
> 
> On Tue, Mar 23, 2021 at 10:05 AM Arnd Bergmann <arnd at kernel.org> wrote:
> > From: Arnd Bergmann <arnd at arndb.de>
> > 
> > When CONFIG_OF is disabled, building with 'make W=1' produces warnings
> > about out of bounds array access:
> > 
> > drivers/gpu/drm/imx/imx-ldb.c: In function 'imx_ldb_set_clock.constprop':
> > drivers/gpu/drm/imx/imx-ldb.c:186:8: error: array subscript -22 is below array bounds of 'struct clk *[4]' [-Werror=array-bounds]
> 
> What about making the driver depend on OF instead (like it is done in
> DRM_IMX_HDMI) ?

The below patch made DRM_IMX_HDMI depend on OF,
because of_drm_find_bridge() is not defined when OF is disabled.

drm/imx: dw_hdmi-imx: depend on OF to fix randconfig compile tests on
x86_64

It doesn't look like DRM_IMX_LDB is in the same case.


Moreover, even if OF is enabled, drm_of_encoder_active_endpoint() is
likely to return -EINVAL.  So, it looks ok to add an error check.

Regards,
Liu Ying

> 
> --- a/drivers/gpu/drm/imx/Kconfig
> +++ b/drivers/gpu/drm/imx/Kconfig
> @@ -27,7 +27,7 @@ config DRM_IMX_TVE
> 
>  config DRM_IMX_LDB
>         tristate "Support for LVDS displays"
> -       depends on DRM_IMX && MFD_SYSCON
> +       depends on DRM_IMX && MFD_SYSCON && OF
>         depends on COMMON_CLK
>         select DRM_PANEL
>         help




More information about the linux-arm-kernel mailing list