aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorRichard Genoud <richard.genoud@gmail.com>2017-03-20 11:52:41 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-03-31 17:26:19 +0200
commit31ca2c63fdc0aee725cbd4f207c1256f5deaabde (patch)
tree56d7a7b2697c1c90a988dffb36539f452006763c /tools
parentserial: mxs-auart: Fix baudrate calculation (diff)
downloadlinux-dev-31ca2c63fdc0aee725cbd4f207c1256f5deaabde.tar.xz
linux-dev-31ca2c63fdc0aee725cbd4f207c1256f5deaabde.zip
tty/serial: atmel: fix race condition (TX+DMA)
If uart_flush_buffer() is called between atmel_tx_dma() and atmel_complete_tx_dma(), the circular buffer has been cleared, but not atmel_port->tx_len. That leads to a circular buffer overflow (dumping (UART_XMIT_SIZE - atmel_port->tx_len) bytes). Tested-by: Nicolas Ferre <nicolas.ferre@microchip.com> Signed-off-by: Richard Genoud <richard.genoud@gmail.com> Cc: stable <stable@vger.kernel.org> # 3.12+ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'tools')
0 files changed, 0 insertions, 0 deletions