> -----Original Message----- > From: Arnd Bergmann [mailto:arnd@xxxxxxxx] > Sent: Friday, July 14, 2017 7:07 AM > To: linux-kernel@xxxxxxxxxxxxxxx; Darren Hart <dvhart@xxxxxxxxxxxxx>; Andy > Shevchenko <andy@xxxxxxxxxxxxx> > Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>; Linus Torvalds > <torvalds@xxxxxxxxxxxxxxxxxxxx>; Guenter Roeck <linux@xxxxxxxxxxxx>; > akpm@xxxxxxxxxxxxxxxxxxxx; netdev@xxxxxxxxxxxxxxx; David S . Miller > <davem@xxxxxxxxxxxxx>; James E . J . Bottomley <jejb@xxxxxxxxxxxxxxxxxx>; > Martin K . Petersen <martin.petersen@xxxxxxxxxx>; linux-scsi@xxxxxxxxxxxxxxx; > x86@xxxxxxxxxx; Arnd Bergmann <arnd@xxxxxxxx>; Limonciello, Mario > <Mario_Limonciello@xxxxxxxx>; Arvind Yadav <arvind.yadav.cs@xxxxxxxxx>; > platform-driver-x86@xxxxxxxxxxxxxxx > Subject: [PATCH 17/22] platform/x86: alienware-wmi: fix format string overflow > warning > > gcc points out a possible format string overflow for a large value of 'zone': > > drivers/platform/x86/alienware-wmi.c: In function 'alienware_wmi_init': > drivers/platform/x86/alienware-wmi.c:461:24: error: '%02X' directive writing > between 2 and 8 bytes into a region of size 6 [-Werror=format-overflow=] > sprintf(buffer, "zone%02X", i); > ^~~~ > drivers/platform/x86/alienware-wmi.c:461:19: note: directive argument in the > range [0, 2147483646] > sprintf(buffer, "zone%02X", i); > ^~~~~~~~~~ > drivers/platform/x86/alienware-wmi.c:461:3: note: 'sprintf' output between 7 and > 13 bytes into a destination of size 10 > > While the zone should never be that large, it's easy to make the > buffer a few bytes longer so gcc can prove this to be safe. > > Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> > --- > drivers/platform/x86/alienware-wmi.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/platform/x86/alienware-wmi.c > b/drivers/platform/x86/alienware-wmi.c > index 0831b428c217..acc01242da82 100644 > --- a/drivers/platform/x86/alienware-wmi.c > +++ b/drivers/platform/x86/alienware-wmi.c > @@ -421,7 +421,7 @@ static DEVICE_ATTR(lighting_control_state, 0644, > show_control_state, > static int alienware_zone_init(struct platform_device *dev) > { > int i; > - char buffer[10]; > + char buffer[13]; > char *name; > > if (interface == WMAX) { > -- > 2.9.0 LGTM, Thanks. Signed-off-by: Mario Limonciello <mario.limonciello@xxxxxxxx>