Messages in this thread | | | Date | Thu, 10 Jul 2014 16:12:05 -0700 (PDT) | Subject | Re: [PATCH 0/2] fixes for empty tx buffer breakage | From | David Miller <> |
| |
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org> 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@digi.com> >> Cc: Aaro Koskinen <aaro.koskinen@iki.fi> >> Cc: Sam Ravnborg <sam@ravnborg.org> >> Cc: "David S. Miller" <davem@davemloft.net> >> Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de> >> >> 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.
| |