linux/drivers/tty
Dmitry Vyukov 9e6b7cd7e7 tty: fix data race in tty_buffer_flush
tty_buffer_flush frees not acquired buffers.
As the result, for example, read of b->size in tty_buffer_free
can return garbage value which will lead to a huge buffer
hanging in the freelist. This is just the benignest
manifestation of freeing of a not acquired object.
If the object is passed to kfree, heap can be corrupted.

Acquire visibility over the buffer before freeing it.

The data race was found with KernelThreadSanitizer (KTSAN).

Signed-off-by: Dmitry Vyukov <dvyukov@google.com>
Reviewed-by: Peter Hurley <peter@hurleysoftware.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 19:03:40 +01:00
..
hvc xen: MFN/GFN/BFN terminology changes for 4.3-rc0 2015-09-10 16:21:11 -07:00
ipwireless
serial serial: atmel: fix error path of probe function 2015-10-04 18:51:42 +01:00
vt tty: vt: Fix !TASK_RUNNING diagnostic warning from paste_selection() 2015-07-23 18:08:29 -07:00
amiserial.c
bfin_jtag_comm.c
cyclades.c
ehv_bytechan.c
goldfish.c
isicom.c
Kconfig
Makefile
metag_da.c tty/metag_da: Avoid module_init/module_exit in non-modular code 2015-06-16 14:12:31 -04:00
mips_ejtag_fdc.c MIPS: Remove "weak" from get_c0_fdc_int() declaration 2015-09-03 12:07:38 +02:00
moxa.c
moxa.h
mxser.c
mxser.h
n_gsm.c tty: Convert use of __constant_htons to htons 2015-07-23 15:10:25 -07:00
n_hdlc.c
n_r3964.c
n_tracerouter.c
n_tracesink.c
n_tracesink.h
n_tty.c tty: fix stall caused by missing memory barrier in drivers/tty/n_tty.c 2015-10-04 19:03:40 +01:00
nozomi.c
pty.c pty: Add debug message for ptmx open 2015-07-23 18:37:32 -07:00
rocket.c
rocket.h
rocket_int.h
synclink.c
synclink_gt.c
synclinkmp.c
sysrq.c mm, oom: pass an oom order of -1 when triggered by sysrq 2015-09-08 15:35:28 -07:00
tty_audit.c
tty_buffer.c tty: fix data race in tty_buffer_flush 2015-10-04 19:03:40 +01:00
tty_io.c tty: don't leak cdev in tty_cdev_add() 2015-10-04 18:51:42 +01:00
tty_ioctl.c tty: Replace inline #ifdef TTY_DEBUG_WAIT_UNTIL_SENT 2015-07-23 18:37:31 -07:00
tty_ldisc.c tty: core: Improve ldisc debug messages 2015-07-23 18:37:31 -07:00
tty_ldsem.c
tty_mutex.c
tty_port.c