* Re: [PATCH 1/2] tty: new helper function tty_get_mget
[not found] <20230213140638.620206-2-fe@dev.tdt.de>
@ 2023-02-13 19:25 ` kernel test robot
2023-02-13 21:28 ` kernel test robot
2023-02-13 21:49 ` kernel test robot
2 siblings, 0 replies; 3+ messages in thread
From: kernel test robot @ 2023-02-13 19:25 UTC (permalink / raw)
To: Florian Eckert, u.kleine-koenig, gregkh, jirislaby, pavel, lee
Cc: llvm, oe-kbuild-all, linux-kernel, linux-leds, Eckert.Florian
Hi Florian,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on tty/tty-testing]
[also build test WARNING on tty/tty-next tty/tty-linus pavel-leds/for-next staging/staging-testing staging/staging-next staging/staging-linus linus/master v6.2-rc8 next-20230213]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Florian-Eckert/tty-new-helper-function-tty_get_mget/20230213-223413
base: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git tty-testing
patch link: https://lore.kernel.org/r/20230213140638.620206-2-fe%40dev.tdt.de
patch subject: [PATCH 1/2] tty: new helper function tty_get_mget
config: x86_64-randconfig-a002-20230213 (https://download.01.org/0day-ci/archive/20230214/202302140339.1vFSjZ1M-lkp@intel.com/config)
compiler: clang version 14.0.6 (https://github.com/llvm/llvm-project f28c006a5895fc0e329fe15fead81e37457cb1d1)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/intel-lab-lkp/linux/commit/096ca9c9428ec2a8ebab4af0798461e66585cdde
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Florian-Eckert/tty-new-helper-function-tty_get_mget/20230213-223413
git checkout 096ca9c9428ec2a8ebab4af0798461e66585cdde
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash drivers/misc/bcm-vk/ drivers/tty/ fs/proc/ init/
If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>
| Link: https://lore.kernel.org/oe-kbuild-all/202302140339.1vFSjZ1M-lkp@intel.com/
All warnings (new ones prefixed by >>):
In file included from drivers/tty/tty_port.c:8:
include/linux/tty.h:423:3: error: expected ')'
struct serial_icounter_struct *icount);
^
include/linux/tty.h:422:19: note: to match this '('
int tty_get_icount(struct tty_struct *tty
^
>> drivers/tty/tty_port.c:266:2: warning: implicit conversion from 'unsigned long' to 'unsigned int' changes value from 18446744073709551615 to 4294967295 [-Wconstant-conversion]
INIT_KFIFO(port->xmit_fifo);
^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/kfifo.h:130:69: note: expanded from macro 'INIT_KFIFO'
__kfifo->mask = __is_kfifo_ptr(__tmp) ? 0 : ARRAY_SIZE(__tmp->buf) - 1;\
~ ~~~~~~~~~~~~~~~~~~~~~~~^~~
1 warning and 1 error generated.
--
In file included from fs/proc/array.c:62:
include/linux/tty.h:423:3: error: expected ')'
struct serial_icounter_struct *icount);
^
include/linux/tty.h:422:19: note: to match this '('
int tty_get_icount(struct tty_struct *tty
^
In file included from fs/proc/array.c:64:
>> include/linux/mman.h:154:9: warning: division by zero is undefined [-Wdivision-by-zero]
_calc_vm_trans(flags, MAP_SYNC, VM_SYNC ) |
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mman.h:132:21: note: expanded from macro '_calc_vm_trans'
: ((x) & (bit1)) / ((bit1) / (bit2))))
^ ~~~~~~~~~~~~~~~~~
1 warning and 1 error generated.
--
In file included from drivers/misc/bcm-vk/bcm_vk_dev.c:20:
In file included from drivers/misc/bcm-vk/bcm_vk.h:18:
include/linux/tty.h:423:3: error: expected ')'
struct serial_icounter_struct *icount);
^
include/linux/tty.h:422:19: note: to match this '('
int tty_get_icount(struct tty_struct *tty
^
>> drivers/misc/bcm-vk/bcm_vk_dev.c:1320:6: warning: shift count >= width of type [-Wshift-count-overflow]
DMA_BIT_MASK(BCM_VK_DMA_BITS));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/dma-mapping.h:76:54: note: expanded from macro 'DMA_BIT_MASK'
#define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1))
^ ~~~
1 warning and 1 error generated.
vim +266 drivers/tty/tty_port.c
9e48565d217a8a drivers/char/tty_port.c Alan Cox 2008-10-13 260
9e48565d217a8a drivers/char/tty_port.c Alan Cox 2008-10-13 261 void tty_port_free_xmit_buf(struct tty_port *port)
9e48565d217a8a drivers/char/tty_port.c Alan Cox 2008-10-13 262 {
44e4909e453eaa drivers/char/tty_port.c Alan Cox 2009-11-30 263 mutex_lock(&port->buf_mutex);
9e48565d217a8a drivers/char/tty_port.c Alan Cox 2008-10-13 264 free_page((unsigned long)port->xmit_buf);
9e48565d217a8a drivers/char/tty_port.c Alan Cox 2008-10-13 265 port->xmit_buf = NULL;
4e2a44c1408b6a drivers/tty/tty_port.c Jiri Slaby 2022-01-24 @266 INIT_KFIFO(port->xmit_fifo);
44e4909e453eaa drivers/char/tty_port.c Alan Cox 2009-11-30 267 mutex_unlock(&port->buf_mutex);
9e48565d217a8a drivers/char/tty_port.c Alan Cox 2008-10-13 268 }
9e48565d217a8a drivers/char/tty_port.c Alan Cox 2008-10-13 269 EXPORT_SYMBOL(tty_port_free_xmit_buf);
9e48565d217a8a drivers/char/tty_port.c Alan Cox 2008-10-13 270
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH 1/2] tty: new helper function tty_get_mget
[not found] <20230213140638.620206-2-fe@dev.tdt.de>
2023-02-13 19:25 ` [PATCH 1/2] tty: new helper function tty_get_mget kernel test robot
@ 2023-02-13 21:28 ` kernel test robot
2023-02-13 21:49 ` kernel test robot
2 siblings, 0 replies; 3+ messages in thread
From: kernel test robot @ 2023-02-13 21:28 UTC (permalink / raw)
To: Florian Eckert, u.kleine-koenig, gregkh, jirislaby, pavel, lee
Cc: llvm, oe-kbuild-all, linux-kernel, linux-leds, Eckert.Florian
Hi Florian,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on tty/tty-testing]
[also build test ERROR on tty/tty-next tty/tty-linus staging/staging-testing staging/staging-next staging/staging-linus linus/master v6.2-rc8 next-20230213]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Florian-Eckert/tty-new-helper-function-tty_get_mget/20230213-223413
base: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git tty-testing
patch link: https://lore.kernel.org/r/20230213140638.620206-2-fe%40dev.tdt.de
patch subject: [PATCH 1/2] tty: new helper function tty_get_mget
config: riscv-buildonly-randconfig-r005-20230212 (https://download.01.org/0day-ci/archive/20230214/202302140516.F9Riaass-lkp@intel.com/config)
compiler: clang version 17.0.0 (https://github.com/llvm/llvm-project db0e6591612b53910a1b366863348bdb9d7d2fb1)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install riscv cross compiling tool for clang build
# apt-get install binutils-riscv64-linux-gnu
# https://github.com/intel-lab-lkp/linux/commit/096ca9c9428ec2a8ebab4af0798461e66585cdde
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Florian-Eckert/tty-new-helper-function-tty_get_mget/20230213-223413
git checkout 096ca9c9428ec2a8ebab4af0798461e66585cdde
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=riscv olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=riscv SHELL=/bin/bash drivers/misc/bcm-vk/ drivers/tty/
If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>
| Link: https://lore.kernel.org/oe-kbuild-all/202302140516.F9Riaass-lkp@intel.com/
All error/warnings (new ones prefixed by >>):
In file included from drivers/tty/tty_io.c:76:
include/linux/tty.h:423:3: error: expected ')'
struct serial_icounter_struct *icount);
^
include/linux/tty.h:422:19: note: to match this '('
int tty_get_icount(struct tty_struct *tty
^
>> drivers/tty/tty_io.c:2589:5: error: conflicting types for 'tty_get_icount'
int tty_get_icount(struct tty_struct *tty,
^
include/linux/tty.h:422:5: note: previous declaration is here
int tty_get_icount(struct tty_struct *tty
^
>> drivers/tty/tty_io.c:2606:31: error: too many arguments to function call, expected 1, have 2
retval = tty_get_icount(tty, &icount);
~~~~~~~~~~~~~~ ^~~~~~~
drivers/tty/tty_io.c:2599:19: note: 'tty_get_icount' declared here
EXPORT_SYMBOL_GPL(tty_get_icount);
^
3 errors generated.
--
In file included from drivers/tty/tty_port.c:8:
include/linux/tty.h:423:3: error: expected ')'
struct serial_icounter_struct *icount);
^
include/linux/tty.h:422:19: note: to match this '('
int tty_get_icount(struct tty_struct *tty
^
>> drivers/tty/tty_port.c:266:2: warning: implicit conversion from 'unsigned long' to 'unsigned int' changes value from 18446744073709551615 to 4294967295 [-Wconstant-conversion]
INIT_KFIFO(port->xmit_fifo);
^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/kfifo.h:130:69: note: expanded from macro 'INIT_KFIFO'
__kfifo->mask = __is_kfifo_ptr(__tmp) ? 0 : ARRAY_SIZE(__tmp->buf) - 1;\
~ ~~~~~~~~~~~~~~~~~~~~~~~^~~
1 warning and 1 error generated.
--
In file included from drivers/misc/bcm-vk/bcm_vk_dev.c:20:
In file included from drivers/misc/bcm-vk/bcm_vk.h:18:
include/linux/tty.h:423:3: error: expected ')'
struct serial_icounter_struct *icount);
^
include/linux/tty.h:422:19: note: to match this '('
int tty_get_icount(struct tty_struct *tty
^
>> drivers/misc/bcm-vk/bcm_vk_dev.c:1320:6: warning: shift count >= width of type [-Wshift-count-overflow]
DMA_BIT_MASK(BCM_VK_DMA_BITS));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/dma-mapping.h:76:54: note: expanded from macro 'DMA_BIT_MASK'
#define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1))
^ ~~~
1 warning and 1 error generated.
vim +/tty_get_icount +2589 drivers/tty/tty_io.c
^1da177e4c3f41 drivers/char/tty_io.c Linus Torvalds 2005-04-16 2579
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2580 /**
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2581 * tty_get_icount - get tty statistics
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2582 * @tty: tty device
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2583 * @icount: output parameter
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2584 *
796a75a98762f1 drivers/tty/tty_io.c Jiri Slaby 2021-11-26 2585 * Gets a copy of the @tty's icount statistics.
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2586 *
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2587 * Locking: none (up to the driver)
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2588 */
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 @2589 int tty_get_icount(struct tty_struct *tty,
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2590 struct serial_icounter_struct *icount)
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2591 {
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2592 memset(icount, 0, sizeof(*icount));
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2593
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2594 if (tty->ops->get_icount)
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2595 return tty->ops->get_icount(tty, icount);
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2596 else
1b8b20868a6d64 drivers/tty/tty_io.c Johan Hovold 2021-04-07 2597 return -ENOTTY;
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2598 }
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2599 EXPORT_SYMBOL_GPL(tty_get_icount);
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2600
d281da7ff6f70e drivers/char/tty_io.c Alan Cox 2010-09-16 2601 static int tty_tiocgicount(struct tty_struct *tty, void __user *arg)
d281da7ff6f70e drivers/char/tty_io.c Alan Cox 2010-09-16 2602 {
d281da7ff6f70e drivers/char/tty_io.c Alan Cox 2010-09-16 2603 struct serial_icounter_struct icount;
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2604 int retval;
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2605
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 @2606 retval = tty_get_icount(tty, &icount);
d281da7ff6f70e drivers/char/tty_io.c Alan Cox 2010-09-16 2607 if (retval != 0)
d281da7ff6f70e drivers/char/tty_io.c Alan Cox 2010-09-16 2608 return retval;
d20c219c731784 drivers/tty/tty_io.c Uwe Kleine-König 2020-12-18 2609
d281da7ff6f70e drivers/char/tty_io.c Alan Cox 2010-09-16 2610 if (copy_to_user(arg, &icount, sizeof(icount)))
d281da7ff6f70e drivers/char/tty_io.c Alan Cox 2010-09-16 2611 return -EFAULT;
d281da7ff6f70e drivers/char/tty_io.c Alan Cox 2010-09-16 2612 return 0;
d281da7ff6f70e drivers/char/tty_io.c Alan Cox 2010-09-16 2613 }
d281da7ff6f70e drivers/char/tty_io.c Alan Cox 2010-09-16 2614
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH 1/2] tty: new helper function tty_get_mget
[not found] <20230213140638.620206-2-fe@dev.tdt.de>
2023-02-13 19:25 ` [PATCH 1/2] tty: new helper function tty_get_mget kernel test robot
2023-02-13 21:28 ` kernel test robot
@ 2023-02-13 21:49 ` kernel test robot
2 siblings, 0 replies; 3+ messages in thread
From: kernel test robot @ 2023-02-13 21:49 UTC (permalink / raw)
To: Florian Eckert, u.kleine-koenig, gregkh, jirislaby, pavel, lee
Cc: llvm, oe-kbuild-all, linux-kernel, linux-leds, Eckert.Florian
Hi Florian,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on tty/tty-testing]
[also build test ERROR on tty/tty-next tty/tty-linus pavel-leds/for-next staging/staging-testing staging/staging-next staging/staging-linus linus/master v6.2-rc8 next-20230213]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Florian-Eckert/tty-new-helper-function-tty_get_mget/20230213-223413
base: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git tty-testing
patch link: https://lore.kernel.org/r/20230213140638.620206-2-fe%40dev.tdt.de
patch subject: [PATCH 1/2] tty: new helper function tty_get_mget
config: x86_64-randconfig-a005-20230213 (https://download.01.org/0day-ci/archive/20230214/202302140536.fks6kujh-lkp@intel.com/config)
compiler: clang version 14.0.6 (https://github.com/llvm/llvm-project f28c006a5895fc0e329fe15fead81e37457cb1d1)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/intel-lab-lkp/linux/commit/096ca9c9428ec2a8ebab4af0798461e66585cdde
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Florian-Eckert/tty-new-helper-function-tty_get_mget/20230213-223413
git checkout 096ca9c9428ec2a8ebab4af0798461e66585cdde
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash
If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>
| Link: https://lore.kernel.org/oe-kbuild-all/202302140536.fks6kujh-lkp@intel.com/
All errors (new ones prefixed by >>):
In file included from drivers/leds/trigger/ledtrig-tty.c:7:
include/linux/tty.h:423:3: error: expected ')'
struct serial_icounter_struct *icount);
^
include/linux/tty.h:422:19: note: to match this '('
int tty_get_icount(struct tty_struct *tty
^
>> drivers/leds/trigger/ledtrig-tty.c:116:42: error: too many arguments to function call, expected single argument 'tty', have 2 arguments
ret = tty_get_icount(trigger_data->tty, &icount);
~~~~~~~~~~~~~~ ^~~~~~~
include/linux/tty.h:422:5: note: 'tty_get_icount' declared here
int tty_get_icount(struct tty_struct *tty
^
2 errors generated.
vim +/tty +116 drivers/leds/trigger/ledtrig-tty.c
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 78
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 79 static void ledtrig_tty_work(struct work_struct *work)
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 80 {
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 81 struct ledtrig_tty_data *trigger_data =
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 82 container_of(work, struct ledtrig_tty_data, dwork.work);
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 83 struct serial_icounter_struct icount;
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 84 int ret;
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 85
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 86 mutex_lock(&trigger_data->mutex);
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 87
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 88 if (!trigger_data->ttyname) {
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 89 /* exit without rescheduling */
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 90 mutex_unlock(&trigger_data->mutex);
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 91 return;
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 92 }
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 93
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 94 /* try to get the tty corresponding to $ttyname */
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 95 if (!trigger_data->tty) {
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 96 dev_t devno;
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 97 struct tty_struct *tty;
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 98 int ret;
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 99
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 100 ret = tty_dev_name_to_number(trigger_data->ttyname, &devno);
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 101 if (ret < 0)
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 102 /*
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 103 * A device with this name might appear later, so keep
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 104 * retrying.
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 105 */
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 106 goto out;
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 107
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 108 tty = tty_kopen_shared(devno);
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 109 if (IS_ERR(tty) || !tty)
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 110 /* What to do? retry or abort */
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 111 goto out;
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 112
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 113 trigger_data->tty = tty;
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 114 }
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 115
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 @116 ret = tty_get_icount(trigger_data->tty, &icount);
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 117 if (ret) {
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 118 dev_info(trigger_data->tty->dev, "Failed to get icount, stopped polling\n");
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 119 mutex_unlock(&trigger_data->mutex);
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 120 return;
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 121 }
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 122
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 123 if (icount.rx != trigger_data->rx ||
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 124 icount.tx != trigger_data->tx) {
ba8a86e4dadb33 Uwe Kleine-König 2021-02-19 125 led_set_brightness_sync(trigger_data->led_cdev, LED_ON);
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 126
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 127 trigger_data->rx = icount.rx;
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 128 trigger_data->tx = icount.tx;
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 129 } else {
ba8a86e4dadb33 Uwe Kleine-König 2021-02-19 130 led_set_brightness_sync(trigger_data->led_cdev, LED_OFF);
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 131 }
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 132
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 133 out:
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 134 mutex_unlock(&trigger_data->mutex);
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 135 schedule_delayed_work(&trigger_data->dwork, msecs_to_jiffies(100));
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 136 }
fd4a641ac88fbb Uwe Kleine-König 2021-01-13 137
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests
^ permalink raw reply [flat|nested] 3+ messages in thread