On Fri, May 03, 2013 at 09:38:50PM +0400, Stas Sergeev wrote:No, it doesn't slow down the data transfer.03.05.2013 20:30, Greg KH ÐÐÑÐÑ:Why do you think that is too expensive to call? Does it somehow stopWe need some way to check the chars in the buffer, is the device you areGreg, unfortunately, I do have nothing.
using just very slow to respond to this request? How slow? Do you have
a test case that we can see how it is affected?
The customer is in CC list, so maybe he will
provide the test-case, but I doubt.
Please, what are your concerns here?
The patch in question does this:
---
+ ret = usb_control_msg(port->serial->dev,
+ usb_rcvctrlpipe(port->serial->dev, 0),
+ FTDI_SIO_GET_MODEM_STATUS_REQUEST,
+ FTDI_SIO_GET_MODEM_STATUS_REQUEST_TYPE,
+ 0, priv->interface,
+ buf, 2, WDR_TIMEOUT);
---
Obviously, this is too expensive to call too frequently,
or am I missing something?
the data being sent to the device through the serial endpoints? Is
userspace calling this function too much slowing something else down?
No idea.I asked the customer to comment outWhat exactly is the "problem" being seen?
tty_chars_in_buffer(tty) < WAKEUP_CHARS
line in n_tty.c, and he said that cured his problems,
so I think my guess was right.
Slow select() call (and other calls).The patch claims it only affects tcdrain() and close().Because I don't know what the problem really is :)
Its trivial to see it also affects poll(), select() and TIOCOUTQ
ioctl, so even from that it is already broken.
Why do you need a test-case for this?