* [jirislaby:devel 20/27] drivers/tty/tty_io.c:3453:21: error: subscripted value is not an array, pointer, or vector
@ 2026-03-24 13:59 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-03-24 13:59 UTC (permalink / raw)
To: Jiri Slaby (SUSE); +Cc: llvm, oe-kbuild-all
tree: https://git.kernel.org/pub/scm/linux/kernel/git/jirislaby/linux.git devel
head: 5d42f0e906f51125dada29404e4278e3f40130e4
commit: 764e0f454dded65101e69eca896f8851d16f9b62 [20/27] tty: convert driver::ports to xarray
config: x86_64-allnoconfig (https://download.01.org/0day-ci/archive/20260324/202603242158.265VFIM6-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260324/202603242158.265VFIM6-lkp@intel.com/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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202603242158.265VFIM6-lkp@intel.com/
All errors (new ones prefixed by >>):
>> drivers/tty/tty_io.c:3453:21: error: subscripted value is not an array, pointer, or vector
3453 | if (driver->ports[i])
| ~~~~~~~~~~~~~^~
drivers/tty/tty_io.c:3454:42: error: subscripted value is not an array, pointer, or vector
3454 | tty_port_link_driver_wq(driver->ports[i], driver);
| ~~~~~~~~~~~~~^~
2 errors generated.
vim +3453 drivers/tty/tty_io.c
7d7b93c1452f38 drivers/char/tty_io.c Alan Cox 2008-10-13 3413
385812835431c9 drivers/tty/tty_io.c Jiri Slaby 2021-11-26 3414 /**
c38f45ef5fe223 drivers/tty/tty_io.c Jiri Slaby (SUSE 2023-09-19 3415) * tty_register_driver - register a tty driver
385812835431c9 drivers/tty/tty_io.c Jiri Slaby 2021-11-26 3416 * @driver: driver to register
385812835431c9 drivers/tty/tty_io.c Jiri Slaby 2021-11-26 3417 *
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3418 * Called by a tty driver to register itself.
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3419 */
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3420 int tty_register_driver(struct tty_driver *driver)
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3421 {
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3422 int error;
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3423 int i;
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3424 dev_t dev;
b670bde0b24979 drivers/char/tty_io.c Vasiliy Kulikov 2010-09-05 3425 struct device *d;
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3426
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3427 if (!driver->major) {
37bdfb074ec035 drivers/char/tty_io.c Alan Cox 2008-02-08 3428 error = alloc_chrdev_region(&dev, driver->minor_start,
37bdfb074ec035 drivers/char/tty_io.c Alan Cox 2008-02-08 3429 driver->num, driver->name);
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3430 if (!error) {
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3431 driver->major = MAJOR(dev);
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3432 driver->minor_start = MINOR(dev);
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3433 }
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3434 } else {
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3435 dev = MKDEV(driver->major, driver->minor_start);
e5717c48ed52fe drivers/char/tty_io.c Geert Uytterhoeven 2007-02-20 3436 error = register_chrdev_region(dev, driver->num, driver->name);
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3437 }
9bb8a3d4109f3b drivers/tty/tty_io.c Jiri Slaby 2012-06-04 3438 if (error < 0)
16a02081baa15b drivers/tty/tty_io.c Jiri Slaby 2012-08-08 3439 goto err;
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3440
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3441 /*
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3442 * Drivers that do not define driver_name are potentially in-memory devices
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3443 * like vty, which generally do not require special workqueue settings.
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3444 */
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3445 if (!(driver->flags & TTY_DRIVER_NO_WORKQUEUE) && driver->driver_name) {
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3446 driver->flip_wq = alloc_workqueue("%s-%s", WQ_UNBOUND | WQ_SYSFS,
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3447 0, driver->name, driver->driver_name);
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3448 if (!driver->flip_wq) {
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3449 error = -ENOMEM;
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3450 goto err_unreg_char;
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3451 }
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3452 for (i = 0; i < driver->num; i++) {
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 @3453 if (driver->ports[i])
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3454 tty_port_link_driver_wq(driver->ports[i], driver);
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3455 }
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3456 }
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3457
7e73eca6a7b296 drivers/tty/tty_io.c Jiri Slaby 2012-08-08 3458 if (driver->flags & TTY_DRIVER_DYNAMIC_ALLOC) {
7e73eca6a7b296 drivers/tty/tty_io.c Jiri Slaby 2012-08-08 3459 error = tty_cdev_add(driver, dev, 0, driver->num);
9bb8a3d4109f3b drivers/tty/tty_io.c Jiri Slaby 2012-06-04 3460 if (error)
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3461 goto err_destroy_wq;
7e73eca6a7b296 drivers/tty/tty_io.c Jiri Slaby 2012-08-08 3462 }
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3463
f49573f2f53e0f drivers/tty/tty_io.c Jiri Slaby (SUSE 2025-04-25 3464) scoped_guard(mutex, &tty_mutex)
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3465 list_add(&driver->tty_drivers, &tty_drivers);
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3466
331b831983f9d7 drivers/char/tty_io.c Greg Kroah-Hartman 2005-06-20 3467 if (!(driver->flags & TTY_DRIVER_DYNAMIC_DEV)) {
b670bde0b24979 drivers/char/tty_io.c Vasiliy Kulikov 2010-09-05 3468 for (i = 0; i < driver->num; i++) {
b670bde0b24979 drivers/char/tty_io.c Vasiliy Kulikov 2010-09-05 3469 d = tty_register_device(driver, i, NULL);
b670bde0b24979 drivers/char/tty_io.c Vasiliy Kulikov 2010-09-05 3470 if (IS_ERR(d)) {
b670bde0b24979 drivers/char/tty_io.c Vasiliy Kulikov 2010-09-05 3471 error = PTR_ERR(d);
16a02081baa15b drivers/tty/tty_io.c Jiri Slaby 2012-08-08 3472 goto err_unreg_devs;
b670bde0b24979 drivers/char/tty_io.c Vasiliy Kulikov 2010-09-05 3473 }
b670bde0b24979 drivers/char/tty_io.c Vasiliy Kulikov 2010-09-05 3474 }
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3475 }
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3476 proc_tty_register_driver(driver);
7d7b93c1452f38 drivers/char/tty_io.c Alan Cox 2008-10-13 3477 driver->flags |= TTY_DRIVER_INSTALLED;
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3478 return 0;
b670bde0b24979 drivers/char/tty_io.c Vasiliy Kulikov 2010-09-05 3479
16a02081baa15b drivers/tty/tty_io.c Jiri Slaby 2012-08-08 3480 err_unreg_devs:
b670bde0b24979 drivers/char/tty_io.c Vasiliy Kulikov 2010-09-05 3481 for (i--; i >= 0; i--)
b670bde0b24979 drivers/char/tty_io.c Vasiliy Kulikov 2010-09-05 3482 tty_unregister_device(driver, i);
b670bde0b24979 drivers/char/tty_io.c Vasiliy Kulikov 2010-09-05 3483
f49573f2f53e0f drivers/tty/tty_io.c Jiri Slaby (SUSE 2025-04-25 3484) scoped_guard(mutex, &tty_mutex)
b670bde0b24979 drivers/char/tty_io.c Vasiliy Kulikov 2010-09-05 3485 list_del(&driver->tty_drivers);
b670bde0b24979 drivers/char/tty_io.c Vasiliy Kulikov 2010-09-05 3486
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3487 err_destroy_wq:
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3488 if (driver->flip_wq)
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3489 destroy_workqueue(driver->flip_wq);
eb3b0d92c9c398 drivers/tty/tty_io.c Xin Zhao 2026-02-13 3490
9bb8a3d4109f3b drivers/tty/tty_io.c Jiri Slaby 2012-06-04 3491 err_unreg_char:
b670bde0b24979 drivers/char/tty_io.c Vasiliy Kulikov 2010-09-05 3492 unregister_chrdev_region(dev, driver->num);
16a02081baa15b drivers/tty/tty_io.c Jiri Slaby 2012-08-08 3493 err:
b670bde0b24979 drivers/char/tty_io.c Vasiliy Kulikov 2010-09-05 3494 return error;
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3495 }
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3496 EXPORT_SYMBOL(tty_register_driver);
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 3497
:::::: The code at line 3453 was first introduced by commit
:::::: eb3b0d92c9c39890592cca6647601fe5c631efea tty: tty_port: add workqueue to flip TTY buffer
:::::: TO: Xin Zhao <jackzxcui1989@163.com>
:::::: CC: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-03-24 14:00 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-24 13:59 [jirislaby:devel 20/27] drivers/tty/tty_io.c:3453:21: error: subscripted value is not an array, pointer, or vector kernel test robot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox