Re: [PATCH 0/2] fixes for empty tx buffer breakage

From: David Miller
Date: Thu Jul 10 2014 - 19:12:14 EST


From: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
Date: Thu, 10 Jul 2014 16:14:32 -0700

> On Sun, Jul 06, 2014 at 11:29:51AM -0400, Peter Hurley wrote:
>> Cc: Seth Bollinger <sethb@xxxxxxxx>
>> Cc: Aaro Koskinen <aaro.koskinen@xxxxxx>
>> Cc: Sam Ravnborg <sam@xxxxxxxxxxxx>
>> Cc: "David S. Miller" <davem@xxxxxxxxxxxxx>
>> Cc: Thomas Bogendoerfer <tsbogend@xxxxxxxxxxxxxxxx>
>>
>> Greg,
>>
>> I completed the audit of serial drivers after reports that
>> several Sun serial drivers were broken by
>> commit 717f3bbab3c7628736ef738fdbf3d9a28578c26c,
>> 'serial_core: Fix conditional start_tx on ring buffer not empty'.
>>
>> I apologize for not submitting this sooner. The delay was due to
>> an ongoing analysis of serial flow control prompted by Sam Ravnborg's
>> question:
>>
>> On 06/10/2014 03:24 PM, Sam Ravnborg wrote:
>> > I also noticed the typical pattern is:
>> >
>> > if (uart_circ_empty(xmit) || uart_tx_stopped(port))
>> >
>> > Should you use this pattern also in sunsab.c?
>>
>> Unfortunately, that analysis revealed that tx flow control is
>> largely SMP-unsafe, and it's fairly easy to corrupt the hardware
>> state wrt. the tty flow control state.
>>
>> I'm still working on the solutions to that; they're too
>> extensive to submit for 3.16 anyway.
>
> So these should go into 3.16-final? Or 3.17?

Definitely 3.16, this regression is several releases old.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/