On Sun, May 16, 2004 at 08:45:54AM -0700, Pete Zaitcev wrote:
> This patch resolves the following problems.
> 
> When tty is in cooked mode, line discipline echoes characters by using
> ->write method in tty driver. In case of usbserial, this path takes
> a semaphore, which oopses. Note that when "low latency" flag is not
> set, oops does not happen, but sleeping in a write is not a good thing
> to do anyway. The patch addresses this by off-loading the write into
> a process context, borrowed from keventd. The 2.6 has a cleaner approach,
> but it changes some basic assumptions, so we're not taking that path.
> 
> Incidentially, the ->write_room method was not playing with existing
> line disciplines well. We returned either the block size (16 to 64)
> when a transfer was not active, or zero when it was active. However,
> tty layer interpreted it as a number of bytes free in FIFO. When it
> wanted to write two bytes, it would get room, see 16, proceed with
> writing one byte (taking whole URB), then another (this one fails).
> I think this might not be fixed in 2.6 yet
> 
> Also, I replaced checks for EINPROGRESS (which are like sleep_on: 99% bug).
> 
> Greg retains the maintainership of usbserial for the time being, but
> he approved the post_helper for 2.4.

Looks fine to me.  Marcelo, apply away :)

thanks,

greg k-h


-------------------------------------------------------
This SF.Net email is sponsored by: SourceForge.net Broadband
Sign-up now for SourceForge Broadband and get the fastest
6.0/768 connection for only $19.95/mo for the first 3 months!
http://ads.osdn.com/?ad_id=2562&alloc_id=6184&op=click
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to