Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider: - [Critical] Changing the driver identification string exposed in the fb_fix_screeninfo structure from "Via" to "viafb" breaks userspace ABI backward compatibility. --
--- Patch [1]: [PATCH v2] video: fbdev: via: refactor strcpy and viafb_name --- commit 31193988a75e693bb97d9723171d248ff11a2f17 Author: Ajith P V <[email protected]> video: fbdev: via: refactor strcpy and viafb_name This commit replaces unbounded strcpy() calls with strscpy() to harden the framebuffer screen info initialization. It also converts the viafb_name pointer into a static const char array and changes its string value. Link: https://www.kernel.org/doc/html/latest/process/deprecated.html#strcpy [1] Link: https://github.com/KSPP/linux/issues/88 [2] > diff --git a/drivers/video/fbdev/via/viafbdev.c > b/drivers/video/fbdev/via/viafbdev.c > index 80f95dac32c8c..b3a2e07b61a7c 100644 > --- a/drivers/video/fbdev/via/viafbdev.c > +++ b/drivers/video/fbdev/via/viafbdev.c > @@ -16,7 +16,7 @@ > #define _MASTER_FILE > #include "global.h" > > -static char *viafb_name = "Via"; > +static const char viafb_name[] = "viafb"; [Severity: Critical] Does changing this string from "Via" to "viafb" cause a userspace ABI regression? Userspace tools and display servers, such as Xorg's via driver, often rely on the exact identification string returned in the id field of fb_fix_screeninfo by the framebuffer ioctl to detect hardware and apply specific quirks. Could the compile-time bounds checking and optimization benefits still be achieved without modifying the exposed string value, perhaps by defining it as 'static const char viafb_name[] = "Via";' instead? > static u32 pseudo_pal[17]; > > /* video mode */ [ ... ] > @@ -144,7 +144,7 @@ static void viafb_setup_fixinfo(struct fb_fix_screeninfo > *fix, > struct viafb_par *viaparinfo) > { > memset(fix, 0, sizeof(struct fb_fix_screeninfo)); > - strcpy(fix->id, viafb_name); > + strscpy(fix->id, viafb_name, sizeof(fix->id)); > > fix->smem_start = viaparinfo->fbmem; > fix->smem_len = viaparinfo->fbmem_free; -- Sashiko AI review ยท https://sashiko.dev/#/patchset/[email protected]?part=1
