[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAKEH-65f_8771=qiZXpytrTT4J0TMRHCsg4KCcphhDDMw__wug@mail.gmail.com>
Date: Mon, 4 Jul 2022 20:41:36 +0200
From: Greg T <greg.iforce@...il.com>
To: Randy Dunlap <rdunlap@...radead.org>
Cc: linux-kernel@...r.kernel.org, linux-input@...r.kernel.org,
Dmitry Torokhov <dmitry.torokhov@...il.com>
Subject: Re: |Question] iforce Boeder Force Feedback Wheel
2022-07-04 4:19 GMT+02:00, Greg T <greg.iforce@...il.com>:
> Call Trace:
> <TASK>
> _raw_spin_lock_irqsave+0x41/0x50
> uart_write+0x69/0x1e0
> serport_serio_write+0x2b/0x40 [serport]
> iforce_serio_xmit+0xa8/0x1a0 [iforce_serio]
> serport_ldisc_write_wakeup+0x59/0x70 [serport]
I've found this in tty_ldisc.h:
* @write_wakeup: [DRV] ``void ()(struct tty_struct *tty)``
*
* This function is called by the low-level tty driver to signal that line
* discpline should try to send more characters to the low-level driver
* for transmission. If the line discpline does not have any more data to
* send, it can just return. If the line discipline does have some data to
* send, please arise a tasklet or workqueue to do the real data transfer.
* Do not send data in this hook, it may lead to a deadlock.
Does iforce-serio.c have a maintainer? It looks to me that
iforce_serio_write_wakeup should not call iforce_serio_xmit in it.
Powered by blists - more mailing lists