Re: Possible software flow problem in serial_core

From: Peter Hurley
Date: Thu Mar 20 2014 - 21:07:30 EST


On 03/20/2014 08:48 PM, Bollinger, Seth wrote:

Yeah, you're right; thanks for catching this.
(I was busy looking at the ll driver and completely missed the bug in
the serial core).

uart_start() should not be conditioning the call to start_tx() on
the ring buffer being empty; ll drivers should already be able to handle
that because CTS flow control change will start_tx regardless of the ring
buffer count.

Will you send a patch?

Sure thing. Just to be clear, you want to remove the ring buffer tests
and leave the tty tests, right?

Yes. I would remove the NULL ptr test for xmit.buf as well. That way
we can uncover any bugs in the ll drivers that mistakenly depend on it.

The !stopped and !hw_stopped tests must remain.

This will have to wait for the morning though. :)

Take your time. TTY/serial trees are closed until 3.15-rc1 anyway.
Please be sure to address the patch to the serial maintainers.
You can cc me in the patch.

Thanks again,
Peter Hurley
--
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/