Re: locking changes in tty broke low latency feature
From: Grant Edwards <hidden>
Date: 2014-02-20 19:34:18
Also in:
linux-serial, lkml
On 2014-02-20, Peter Hurley [off-list ref] wrote:
On 02/19/2014 09:55 PM, Peter Hurley wrote:quoted
On 02/19/2014 06:06 PM, Hal Murray wrote:quoted
quoted
Can you give me an idea of your device's average and minimum required latency (please be specific)? Is your target arch x86 [so I can evaluate the the impact of bus-locked instructions relative to your expected]?The code I'm familiar with is ntpd and gpsd. They run on almost any hardware or OS and talk to a wide collection of devices. There is no hard requirement for latency. They just work better with lower latency. The lower the better. People gripe about the latency due to USB polling which is about a ms.Have you tried 3.12+ without low_latency? I ripped out a lot of locks from 3.12+ so it's possible it already meets your requirements.Using Alan's idea to mock up a latency test, I threw together a test jig using two computers running 3.14-rc1 and my fwserial driver (modified to not aggregrate writes) in raw mode where the target does this: while (1) { read 64 bytes compare to pattern write 1 byte response } and the sender does this: for (i = 0; i < 2000; i++) { write 64-byte pattern read 1 byte response } Sender completes 2000 loops in 160ms total run time; that's 80us average per complete round-trip.
If I understand correctly, that 80us _includes_ the actual time for the bits on the wire (which means the actual "baud rate" involved is high enough that it's negligible).
I think this shows that low_latency is unnecessary and should just be removed/ignored by the tty core.
If that's the sort of latency that you get for typical kernel
configurations for typical distros, then I agree that the low_latency
flag is not needed by the tty later.
However, it might still be useful for the lower-level tty or
serial-core driver to control CPU usage vs. latency trade-offs (for
exaple, one of my drivers uses it to decide where to set the rx FIFO
threshold).
--
Grant Edwards grant.b.edwards Yow! I wonder if I could
at ever get started in the
gmail.com credit world?