USB: ftdi_sio: re-implement read processing
authorJohan Hovold <jhovold@gmail.com>
Wed, 7 Oct 2009 18:05:07 +0000 (20:05 +0200)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 9 Oct 2009 20:52:05 +0000 (13:52 -0700)
commitcc01f17d5cb8ac604108515735aeca72e17944c1
tree88f2dd91bf41f9a4b8881264ba0efdd2d64b9631
parente63e278b4d2d867893962d3c7cd13a3a24ceb3f1
USB: ftdi_sio: re-implement read processing

- Re-structure read processing.
 - Kill obsolete work queue and always push to tty in completion handler.
 - Use tty_insert_flip_string instead of per character push when
   possible.
 - Fix stalled-read regression in 2.6.31 by using urb status to
   determine when port is closed rather than port count.
 - Fix race with open/close by checking ASYNCB_INITIALIZED in
   unthrottle.
 - Kill private rx_flag and lock and use throttle flags in
   usb_serial_port instead.

Signed-off-by: Johan Hovold <jhovold@gmail.com>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/serial/ftdi_sio.c