Re: Serial driver hangs

From: Paul Fulghum
Date: Tue Sep 28 2004 - 20:15:49 EST


On Tue, 2004-09-28 at 17:12, Alan Cox wrote:
> We have throttle()/unthrottle(). Drivers also know if they can't
> push data.

Yes, though these are manipulated by the ldisc
in relation to the ldisc receive buffer.
Coordinating the use of these functions between
a buffering layer (like the flip buffer) and
the ldisc would require each to have
knowledge of the other's state to know who
calls what and when (yuck).

But much of that may go away when...

> TTY_DONT_FLIP has to die.

*bang*

Until then, flushing the UART receive
FIFO and dropping the bytes (and updating
overrun stat) seems a reasonable short term
solution to stop the machine from locking up
while leaving the device in a recoverable state.

We can even mark it with *FIXME* in a comment.
That always seems to work :-)

--
Paul Fulghum
paulkf@xxxxxxxxxxxxx


-
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/