lkml.org 
[lkml]   [2015]   [Nov]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject[PATCH 0/9] tty: xuartps: Fix lock ups
Date
Hi,

I recently found my system locking up under some conditions. I dug
through the code a bit and the result is this collections of various
changes. Some of it may not be required and has just been created out of
half-baked theories and re-reading the documentation. The actual failing
scenarios seem to be:
- RX IRQ conditions are handled while the receiver is disabled, leaving
the driver in an infinite loop
- console_put_char seems to be interrupted by uart_shutdown disabling
the transmitter while/just before printing

I.e. overall I tried to serialize all operations using the port lock to
avoid such interaction.

Sören

Sören Brinkmann (9):
tty: xuartps: Beautify read-modify writes
tty: xuartps: Use spinlock to serialize HW access
tty: xuartps: Always enable transmitter in start_tx
tty: xuartps: Clear interrupt status register in shutdown
tty: xuartps: Improve startup function
tty: xuartps: Keep lock for whole ISR
tty: xuartps: Acquire port lock for shutdown
tty: xuartps: Move RX path into helper function
tty: xuartps: Only handle RX IRQs when RX is enabled

drivers/tty/serial/xilinx_uartps.c | 129 ++++++++++++++++++++++---------------
1 file changed, 78 insertions(+), 51 deletions(-)

--
2.6.2.3.ga463a5b



\
 
 \ /
  Last update: 2015-11-04 01:41    [W:0.076 / U:0.152 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site