Re: [PATCH] serial: 8250_dw: Fix deadlock in LCR workaround

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Mar 11, 2015 at 8:31 AM, Peter Hurley <peter@xxxxxxxxxxxxxxxxxx> wrote:
> On 03/11/2015 10:29 AM, Tim Kryger wrote:
>> On Wed, Mar 11, 2015 at 6:19 AM, Peter Hurley <peter@xxxxxxxxxxxxxxxxxx> wrote:

>> In cases where it prints, the uart has likely become non-functional.
>
> Why?
>
> The initial port line settings come from the console line settings
> and the h/w was already initialized when the console was registered,
> so ISTM the worst that could happen there is UART_TX is written with
> the value intended for UART_DLL.

Additionally, UART_IER would be written with the value intended for
UART_DLH should the attempt to write UART_LCR with the DLAB set fail.

That is bad but if the attempt to write UART_LCR with DLAB clear
fails, all subsequent writes intended for UART_TX will reach UART_DLL
instead.

The same is true of reads of UART_RX.

> Feel free to submit an alternative.

I liked your earlier proposal where the logging was only skipped if
the port that failed was also the console.
--
To unsubscribe from this list: send the line "unsubscribe linux-serial" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux PPP]     [Linux FS]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Linmodem]     [Device Mapper]     [Linux Kernel for ARM]

  Powered by Linux