[PATCH] drm/kmb: Fix for build errors with Warray-bounds

Kees Cook keescook at chromium.org
Thu Jan 27 21:13:36 UTC 2022


On Thu, Jan 27, 2022 at 11:42:27AM -0800, Anitha Chrisanthus wrote:
> This fixes the following build error
> 
> drivers/gpu/drm/kmb/kmb_plane.c: In function 'kmb_plane_atomic_disable':
> drivers/gpu/drm/kmb/kmb_plane.c:165:34: error: array subscript 3 is
> above array bounds of 'struct layer_status[2]' [-Werror=array-bounds]
>   165 |                 kmb->plane_status[plane_id].ctrl =
>   LCD_CTRL_GL2_ENABLE;
>   |                 ~~~~~~~~~~~~~~~~~^~~~~~~~~~
>   In file included from drivers/gpu/drm/kmb/kmb_plane.c:17:
>   drivers/gpu/drm/kmb/kmb_drv.h:61:41: note: while referencing
>   'plane_status'
>   61 |         struct layer_status
>   plane_status[KMB_MAX_PLANES];

This would be better without the line wrapping (to match the actual
output), but otherwise:

Reviewed-by: Kees Cook <keescook at chromium.org>

>   |                                         ^~~~~~~~~~~~
>   drivers/gpu/drm/kmb/kmb_plane.c:162:34: error: array
>   subscript 2 is above array bounds of 'struct
>   layer_status[2]' [-Werror=array-bounds]
>   162 |
>   kmb->plane_status[plane_id].ctrl =
>   LCD_CTRL_GL1_ENABLE;
>   |                 ~~~~~~~~~~~~~~~~~^~~~~~~~~~
>   In file included from
>   drivers/gpu/drm/kmb/kmb_plane.c:17:
>   drivers/gpu/drm/kmb/kmb_drv.h:61:41: note:
>   while referencing 'plane_status'
>   61 |         struct layer_status
>   plane_status[KMB_MAX_PLANES];
>   |
>   ^~~~~~~~~~~~
> 
> Fixes: 7f7b96a8a0a1 ("drm/kmb: Add support for KeemBay Display")
> Signed-off-by: Anitha Chrisanthus <anitha.chrisanthus at intel.com>
> ---
>  drivers/gpu/drm/kmb/kmb_plane.c | 6 ------
>  1 file changed, 6 deletions(-)
> 
> diff --git a/drivers/gpu/drm/kmb/kmb_plane.c b/drivers/gpu/drm/kmb/kmb_plane.c
> index 00404ba4126d..2735b8eb3537 100644
> --- a/drivers/gpu/drm/kmb/kmb_plane.c
> +++ b/drivers/gpu/drm/kmb/kmb_plane.c
> @@ -158,12 +158,6 @@ static void kmb_plane_atomic_disable(struct drm_plane *plane,
>  	case LAYER_1:
>  		kmb->plane_status[plane_id].ctrl = LCD_CTRL_VL2_ENABLE;
>  		break;
> -	case LAYER_2:
> -		kmb->plane_status[plane_id].ctrl = LCD_CTRL_GL1_ENABLE;
> -		break;
> -	case LAYER_3:
> -		kmb->plane_status[plane_id].ctrl = LCD_CTRL_GL2_ENABLE;
> -		break;
>  	}
>  
>  	kmb->plane_status[plane_id].disable = true;
> -- 
> 2.25.1
> 

-- 
Kees Cook


More information about the dri-devel mailing list