[lvc-project] [PATCH] video: fbdev: kyro: Add some geometry checks.

Fedor Pchelkin pchelkin at ispras.ru
Fri Jan 16 13:14:41 MSK 2026


On Sun, 23. Mar 18:57, Danila Chernetsov wrote:
> The check protects against division by 0, integer wraparound,
> and overflow Start/End window settings.

Из этого перечисления непонятно, какие конкретно проблемы решает патч и
на основе каких ограничений построена предлагаемая проверка.

> 
> Found by Linux Verification Center (linuxtesting.org) with SVACE.
> 
> Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
> Signed-off-by: Danila Chernetsov <listdansp at mail.ru>
> ---
>  drivers/video/fbdev/kyro/fbdev.c | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/drivers/video/fbdev/kyro/fbdev.c b/drivers/video/fbdev/kyro/fbdev.c
> index 08ee8baa79f8..1d5246313d9a 100644
> --- a/drivers/video/fbdev/kyro/fbdev.c
> +++ b/drivers/video/fbdev/kyro/fbdev.c
> @@ -378,6 +378,13 @@ static int kyro_dev_overlay_viewport_set(u32 x, u32 y, u32 ulWidth, u32 ulHeight
>  	    (x < 2 && ulWidth + 2 == 0))
>  		return -EINVAL;
>  
> +	/* The check protects against division by 0, integer wraparound,
> +	 * and overflow Start/End window settings.
> +	 */

Этот комментарий тоже никакой внятной информации не привносит.

> +	if (x + ulWidth - 1 <= x || y + ulHeight - 1 <= y ||
> +	    x + ulWidth - 1 > 65535 || y + ulHeight - 1 > 65535)
> +		return -EINVAL;
> +
>  	/* Stop Ramdac Output */
>  	DisableRamdacOutput(deviceInfo.pSTGReg);
>  
> -- 
> 2.25.1



More information about the lvc-project mailing list