linux/drivers/tty
Johan Hovold c0a6c9f79e serial: msm_serial: drop low-latency workaround
Commit f77232dab2 ("tty: serial: msm: drop uart_port->lock before
calling tty_flip_buffer_push()") claimed to address a locking
issue but only provided a dubious lockdep splat from an unrelated
driver, which in the end turned out to be due a broken local change
carried by the author.

Unfortunately these patches were merged before the issue had been
analysed properly so the commit messages makes no sense whatsoever.

The real issue was first seen on RT which at the time effectively always
set the low_latency flag for all serial drivers by patching
tty_flip_buffer_push(). This in turn revealed that many drivers did not
handle the infamous low_latency behaviour which meant that data was
pushed immediately to the line discipline instead of being deferred to a
work queue.

Since commit a9c3f68f3c ("tty: Fix low_latency BUG"),
tty_flip_buffer_push() always schedules a work item to push data to the
line discipline and there's no need to keep any low_latency hacks
around.

Link: https://lore.kernel.org/linux-serial/cover.1376923198.git.viresh.kumar@linaro.org/
Cc: Andy Gross <agross@kernel.org>
Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
Acked-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Johan Hovold <johan@kernel.org>
Link: https://lore.kernel.org/r/20210421095509.3024-17-johan@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-04-22 12:09:25 +02:00
..
hvc tty: hvc: make symbol 'hvc_udbg_dev' static 2021-04-10 10:41:40 +02:00
ipwireless tty: make everyone's write_room return >= 0 2021-03-10 09:34:09 +01:00
serdev tty: serdev: core: Provide missing description for 'owner' 2020-11-06 10:49:27 +01:00
serial serial: msm_serial: drop low-latency workaround 2021-04-22 12:09:25 +02:00
vt tty: fix memory leak in vc_deallocate 2021-03-28 14:16:47 +02:00
amiserial.c tty: amiserial: add missing TIOCSSERIAL jiffies conversions 2021-04-07 17:22:07 +02:00
ehv_bytechan.c tty: evh_bytechan: Fix out of bounds accesses 2020-03-17 23:40:31 +11:00
goldfish.c tty: goldfish: use __raw_writel()/__raw_readl() 2020-10-28 13:44:43 +01:00
Kconfig tty: pti: Remove Kconfig leftovers 2021-04-09 17:00:32 +02:00
Makefile tty: rocket, remove the driver 2021-03-10 09:34:06 +01:00
mips_ejtag_fdc.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
moxa.c tty: moxa: fix TIOCSSERIAL implementation 2021-04-07 17:22:07 +02:00
moxa.h tty: fix spelling mistake 2020-06-27 16:21:20 +02:00
mxser.c tty: mxser: drop low-latency workaround 2021-04-22 12:09:24 +02:00
mxser.h
n_gsm.c tty: clean include/linux/tty.h up 2021-04-15 10:32:17 +02:00
n_hdlc.c tty: clean include/linux/tty.h up 2021-04-15 10:32:17 +02:00
n_null.c tty: remove TTY_LDISC_MAGIC 2021-03-10 09:34:06 +01:00
n_r3964.c tty: remove TTY_LDISC_MAGIC 2021-03-10 09:34:06 +01:00
n_tty.c tty: create internal tty.h file 2021-04-15 10:22:17 +02:00
nozomi.c tty: nozomi, remove useless debug prints 2021-03-10 09:34:08 +01:00
pty.c tty: create internal tty.h file 2021-04-15 10:22:17 +02:00
synclink_gt.c tty: synclink_gt: remove redundant initialization of variable count 2021-04-22 12:01:59 +02:00
sysrq.c tty/sysrq: Fix issues of code indent should use tabs 2021-04-10 10:33:00 +02:00
tty_audit.c tty: audit: move some local functions out of tty.h 2021-04-15 10:24:58 +02:00
tty_baudrate.c tty: clean include/linux/tty.h up 2021-04-15 10:32:17 +02:00
tty_buffer.c tty: move some internal tty lock enums and functions out of tty.h 2021-04-15 10:26:58 +02:00
tty_io.c tty: make tty_release_redirect() static 2021-04-15 10:28:30 +02:00
tty_ioctl.c tty: move some tty-only functions to drivers/tty/tty.h 2021-04-15 10:30:18 +02:00
tty_jobctrl.c tty: create internal tty.h file 2021-04-15 10:22:17 +02:00
tty_ldisc.c tty: create internal tty.h file 2021-04-15 10:22:17 +02:00
tty_ldsem.c locking/lockdep: Remove unused @nested argument from lock_release() 2019-10-09 12:46:10 +02:00
tty_mutex.c tty: move some internal tty lock enums and functions out of tty.h 2021-04-15 10:26:58 +02:00
tty_port.c tty: create internal tty.h file 2021-04-15 10:22:17 +02:00
tty.h tty: clean include/linux/tty.h up 2021-04-15 10:32:17 +02:00
ttynull.c Revert "init/console: Use ttynull as a fallback when there is no console" 2021-01-08 11:02:18 -08:00
vcc.c tty: make everyone's write_room return >= 0 2021-03-10 09:34:09 +01:00