This is a note to let you know that I've just added the patch titled serial: sc16is7xx: remove wasteful static buffer in sc16is7xx_regmap_name() to the 6.1-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: serial-sc16is7xx-remove-wasteful-static-buffer-in-sc16is7xx_regmap_name.patch and it can be found in the queue-6.1 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. >From 6bcab3c8acc88e265c570dea969fd04f137c8a4c Mon Sep 17 00:00:00 2001 From: Hugo Villeneuve <hvilleneuve@xxxxxxxxxxxx> Date: Mon, 11 Dec 2023 12:13:48 -0500 Subject: serial: sc16is7xx: remove wasteful static buffer in sc16is7xx_regmap_name() From: Hugo Villeneuve <hvilleneuve@xxxxxxxxxxxx> commit 6bcab3c8acc88e265c570dea969fd04f137c8a4c upstream. Using a static buffer inside sc16is7xx_regmap_name() was a convenient and simple way to set the regmap name without having to allocate and free a buffer each time it is called. The drawback is that the static buffer wastes memory for nothing once regmap is fully initialized. Remove static buffer and use constant strings instead. This also avoids a truncation warning when using "%d" or "%u" in snprintf which was flagged by kernel test robot. Fixes: 3837a0379533 ("serial: sc16is7xx: improve regmap debugfs by using one regmap per port") Cc: <stable@xxxxxxxxxxxxxxx> # 6.1.x: 3837a03 serial: sc16is7xx: improve regmap debugfs by using one regmap per port Suggested-by: Andy Shevchenko <andy.shevchenko@xxxxxxxxx> Signed-off-by: Hugo Villeneuve <hvilleneuve@xxxxxxxxxxxx> Link: https://lore.kernel.org/r/20231211171353.2901416-2-hugo@xxxxxxxxxxx Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- drivers/tty/serial/sc16is7xx.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) --- a/drivers/tty/serial/sc16is7xx.c +++ b/drivers/tty/serial/sc16is7xx.c @@ -1698,13 +1698,15 @@ static struct regmap_config regcfg = { .max_register = SC16IS7XX_EFCR_REG, }; -static const char *sc16is7xx_regmap_name(unsigned int port_id) +static const char *sc16is7xx_regmap_name(u8 port_id) { - static char buf[6]; - - snprintf(buf, sizeof(buf), "port%d", port_id); - - return buf; + switch (port_id) { + case 0: return "port0"; + case 1: return "port1"; + default: + WARN_ON(true); + return NULL; + } } static unsigned int sc16is7xx_regmap_port_mask(unsigned int port_id) Patches currently in stable-queue which might be from hvilleneuve@xxxxxxxxxxxx are queue-6.1/serial-sc16is7xx-remove-wasteful-static-buffer-in-sc16is7xx_regmap_name.patch queue-6.1/serial-sc16is7xx-remove-global-regmap-from-struct-sc16is7xx_port.patch queue-6.1/serial-sc16is7xx-change-efr-lock-to-operate-on-each-channels.patch queue-6.1/serial-sc16is7xx-remove-obsolete-loop-in-sc16is7xx_port_irq.patch queue-6.1/serial-sc16is7xx-convert-from-_raw_-to-_noinc_-regmap-functions-for-fifo.patch queue-6.1/serial-sc16is7xx-remove-unused-line-structure-member.patch queue-6.1/serial-sc16is7xx-fix-invalid-sc16is7xx_lines-bitfield-in-case-of-probe-error.patch queue-6.1/serial-sc16is7xx-improve-do-while-loop-in-sc16is7xx_irq.patch queue-6.1/serial-sc16is7xx-improve-regmap-debugfs-by-using-one-regmap-per-port.patch