Hi Tony, kernel test robot noticed the following build warnings: https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Tony-Lindgren/printk-Save-console-options-for-add_preferred_console_match/20231121-193809 base: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing patch link: https://lore.kernel.org/r/20231121113203.61341-4-tony%40atomide.com patch subject: [PATCH v3 3/3] serial: core: Move console character device handling from printk config: parisc-randconfig-r081-20231122 (https://download.01.org/0day-ci/archive/20231122/202311221437.5Gil0Pml-lkp@xxxxxxxxx/config) compiler: hppa-linux-gcc (GCC) 13.2.0 reproduce: (https://download.01.org/0day-ci/archive/20231122/202311221437.5Gil0Pml-lkp@xxxxxxxxx/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <lkp@xxxxxxxxx> | Reported-by: Dan Carpenter <error27@xxxxxxxxx> | Closes: https://lore.kernel.org/r/202311221437.5Gil0Pml-lkp@xxxxxxxxx/ smatch warnings: drivers/tty/serial/serial_base_bus.c:266 serial_base_add_preferred_console() error: uninitialized symbol 'nmbr_match'. drivers/tty/serial/serial_base_bus.c:265 serial_base_add_preferred_console() error: uninitialized symbol 'char_match'. vim +/nmbr_match +266 drivers/tty/serial/serial_base_bus.c e4ebdcd790e0f3 Tony Lindgren 2023-11-21 261 int serial_base_add_preferred_console(struct uart_driver *drv, e4ebdcd790e0f3 Tony Lindgren 2023-11-21 262 struct uart_port *port) e4ebdcd790e0f3 Tony Lindgren 2023-11-21 263 { e4ebdcd790e0f3 Tony Lindgren 2023-11-21 264 const char *port_match __free(kfree); b1b8726ec3f40b Tony Lindgren 2023-11-21 @265 const char *char_match __free(kfree); b1b8726ec3f40b Tony Lindgren 2023-11-21 @266 const char *nmbr_match __free(kfree); These need to be initialized to NULL. const char *char_match __free(kfree) = NULL; e4ebdcd790e0f3 Tony Lindgren 2023-11-21 267 int ret; e4ebdcd790e0f3 Tony Lindgren 2023-11-21 268 e4ebdcd790e0f3 Tony Lindgren 2023-11-21 269 port_match = kasprintf(GFP_KERNEL, "%s:%i.%i", dev_name(port->dev), e4ebdcd790e0f3 Tony Lindgren 2023-11-21 270 port->ctrl_id, port->port_id); e4ebdcd790e0f3 Tony Lindgren 2023-11-21 271 if (!port_match) e4ebdcd790e0f3 Tony Lindgren 2023-11-21 272 return -ENOMEM; Otherwise in this error path we'll call kfree(char_match) and kfree(nmbr_match) when the haven't been initialized. e4ebdcd790e0f3 Tony Lindgren 2023-11-21 273 b1b8726ec3f40b Tony Lindgren 2023-11-21 274 char_match = kasprintf(GFP_KERNEL, "%s%i", drv->dev_name, port->line); b1b8726ec3f40b Tony Lindgren 2023-11-21 275 if (!char_match) b1b8726ec3f40b Tony Lindgren 2023-11-21 276 return -ENOMEM; b1b8726ec3f40b Tony Lindgren 2023-11-21 277 b1b8726ec3f40b Tony Lindgren 2023-11-21 278 /* Handle ttyS specific options */ b1b8726ec3f40b Tony Lindgren 2023-11-21 279 if (!strncmp(drv->dev_name, "ttyS", 4)) { b1b8726ec3f40b Tony Lindgren 2023-11-21 280 /* No name, just a number */ b1b8726ec3f40b Tony Lindgren 2023-11-21 281 nmbr_match = kasprintf(GFP_KERNEL, "%i", port->line); b1b8726ec3f40b Tony Lindgren 2023-11-21 282 if (!nmbr_match) b1b8726ec3f40b Tony Lindgren 2023-11-21 283 return -ENODEV; b1b8726ec3f40b Tony Lindgren 2023-11-21 284 b1b8726ec3f40b Tony Lindgren 2023-11-21 285 ret = add_preferred_console_match(nmbr_match, drv->dev_name, b1b8726ec3f40b Tony Lindgren 2023-11-21 286 port->line); b1b8726ec3f40b Tony Lindgren 2023-11-21 287 if (ret && ret != -ENOENT) b1b8726ec3f40b Tony Lindgren 2023-11-21 288 return ret; b1b8726ec3f40b Tony Lindgren 2023-11-21 289 b1b8726ec3f40b Tony Lindgren 2023-11-21 290 /* Sparc ttya and ttyb */ b1b8726ec3f40b Tony Lindgren 2023-11-21 291 ret = serial_base_add_sparc_console(drv, port); b1b8726ec3f40b Tony Lindgren 2023-11-21 292 if (ret) b1b8726ec3f40b Tony Lindgren 2023-11-21 293 return ret; b1b8726ec3f40b Tony Lindgren 2023-11-21 294 } b1b8726ec3f40b Tony Lindgren 2023-11-21 295 b1b8726ec3f40b Tony Lindgren 2023-11-21 296 /* Handle the traditional character device name style console=ttyS0 */ b1b8726ec3f40b Tony Lindgren 2023-11-21 297 ret = add_preferred_console_match(char_match, drv->dev_name, port->line); b1b8726ec3f40b Tony Lindgren 2023-11-21 298 if (ret && ret != -ENOENT) b1b8726ec3f40b Tony Lindgren 2023-11-21 299 return ret; b1b8726ec3f40b Tony Lindgren 2023-11-21 300 e4ebdcd790e0f3 Tony Lindgren 2023-11-21 301 /* Translate a hardware addressing style console=DEVNAME:0.0 */ e4ebdcd790e0f3 Tony Lindgren 2023-11-21 302 ret = add_preferred_console_match(port_match, drv->dev_name, port->line); e4ebdcd790e0f3 Tony Lindgren 2023-11-21 303 if (ret && ret != -ENOENT) e4ebdcd790e0f3 Tony Lindgren 2023-11-21 304 return ret; e4ebdcd790e0f3 Tony Lindgren 2023-11-21 305 e4ebdcd790e0f3 Tony Lindgren 2023-11-21 306 return 0; e4ebdcd790e0f3 Tony Lindgren 2023-11-21 307 } -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki