]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
fbdev: sm501fb: Add some geometry checks.
authorDanila Chernetsov <listdansp@mail.ru>
Wed, 19 Mar 2025 01:30:11 +0000 (01:30 +0000)
committerHelge Deller <deller@gmx.de>
Wed, 26 Mar 2025 21:39:21 +0000 (22:39 +0100)
Added checks for xoffset, yoffset settings.
Incorrect settings of these parameters can lead to errors
in sm501fb_pan_ functions.

Found by Linux Verification Center (linuxtesting.org) with SVACE.

Fixes: 5fc404e47bdf ("[PATCH] fb: SM501 framebuffer driver")
Signed-off-by: Danila Chernetsov <listdansp@mail.ru>
Signed-off-by: Helge Deller <deller@gmx.de>
drivers/video/fbdev/sm501fb.c

index 7734377b2d87b934a3d80362308bad660d640246..ed6f4f43e2d52a7c4317f2ee7ffe67a1910eac10 100644 (file)
@@ -327,6 +327,13 @@ static int sm501fb_check_var(struct fb_var_screeninfo *var,
        if (var->xres_virtual > 4096 || var->yres_virtual > 2048)
                return -EINVAL;
 
+       /* geometry sanity checks */
+       if (var->xres + var->xoffset > var->xres_virtual)
+               return -EINVAL;
+
+       if (var->yres + var->yoffset > var->yres_virtual)
+               return -EINVAL;
+
        /* can cope with 8,16 or 32bpp */
 
        if (var->bits_per_pixel <= 8)