* [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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.