linux-xiaomi-chiron/drivers/input/serio
Linus Torvalds 3b830a9c34 tty: convert tty_ldisc_ops 'read()' function to take a kernel pointer
The tty line discipline .read() function was passed the final user
pointer destination as an argument, which doesn't match the 'write()'
function, and makes it very inconvenient to do a splice method for
ttys.

This is a conversion to use a kernel buffer instead.

NOTE! It does this by passing the tty line discipline ->read() function
an additional "cookie" to fill in, and an offset into the cookie data.

The line discipline can fill in the cookie data with its own private
information, and then the reader will repeat the read until either the
cookie is cleared or it runs out of data.

The only real user of this is N_HDLC, which can use this to handle big
packets, even if the kernel buffer is smaller than the whole packet.

Cc: Christoph Hellwig <hch@lst.de>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2021-01-20 16:48:47 -08:00
..
altera_ps2.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ambakmi.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
ams_delta_serio.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
apbps2.c Input: apbps2 - add __iomem to register struct 2019-12-19 13:41:54 -08:00
arc_ps2.c Input: remove dev_err() usage after platform_get_irq() 2019-08-14 10:49:01 -07:00
ct82c710.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
gscps2.c remove ioremap_nocache and devm_ioremap_nocache 2020-01-06 09:45:59 +01:00
hil_mlc.c hil/parisc: Disable HIL driver when it gets stuck 2020-10-22 22:44:35 +02:00
hp_sdc.c maccess: rename probe_kernel_{read,write} to copy_{from,to}_kernel_nofault 2020-06-17 10:57:41 -07:00
hp_sdc_mlc.c hil/parisc: Disable HIL driver when it gets stuck 2020-10-22 22:44:35 +02:00
hyperv-keyboard.c Input: hyperv-keyboard: Use VMBUS_RING_SIZE() for ringbuffer sizes 2020-09-28 08:57:20 +00:00
i8042-io.h input: i8042 - Remove special Cayman handling 2020-08-14 22:05:06 -04:00
i8042-ip22io.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
i8042-jazzio.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
i8042-snirm.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
i8042-sparcio.h Input: i8042 - rework DT node name comparisons 2019-02-18 12:11:04 -08:00
i8042-x86ia64io.h Input: i8042 - add Acer laptops to the i8042 reset list 2020-12-09 21:01:22 -08:00
i8042.c Input: i8042 - fix error return code in i8042_setup_aux() 2020-11-24 17:48:45 -08:00
i8042.h input: i8042: remove support for 8042-unicore32io 2020-07-01 12:10:47 +03:00
ioc3kbd.c Input: add IOC3 serio driver 2020-01-22 10:05:53 -08:00
Kconfig treewide: replace '---help---' in Kconfig files with 'help' 2020-06-14 01:57:21 +09:00
libps2.c Input: Use fallthrough pseudo-keyword 2020-07-07 11:25:54 -07:00
maceps2.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
Makefile Input: add IOC3 serio driver 2020-01-22 10:05:53 -08:00
olpc_apsp.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
parkbd.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
pcips2.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 178 2019-05-30 11:29:19 -07:00
ps2-gpio.c Input: remove dev_err() usage after platform_get_irq() 2019-08-14 10:49:01 -07:00
ps2mult.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
q40kbd.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
rpckbd.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
sa1111ps2.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 178 2019-05-30 11:29:19 -07:00
serio.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
serio_raw.c treewide: Remove uninitialized_var() usage 2020-07-16 12:35:15 -07:00
serport.c tty: convert tty_ldisc_ops 'read()' function to take a kernel pointer 2021-01-20 16:48:47 -08:00
sun4i-ps2.c Input: sun4i-ps2 - fix handling of platform_get_irq() error 2020-09-16 10:42:16 -07:00
userio.c vfs: do bulk POLL* -> EPOLL* replacement 2018-02-11 14:34:03 -08:00
xilinx_ps2.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 151 2019-05-30 11:26:28 -07:00