Almost all USB-serial TIOCMIWAIT-implementations do not wake up
processes sleeping on modem-status changes at port remove. This means
that a process sleeping in TIOCMIWAIT will have to be manually
interrupted after a device disconnect.

These patches fix all driver implementing TIOCMIWAIT except for ftdi_sio
which is the only driver that currently handles disconnect, and mos7720
whose TIOCMIWAIT-implementation is so badly broken is does not even try
to sleep (I'll remove it completely in later patch).

Note also that the mos7840 implementation did not even wake processes up
on modem-status changes, and that this is fixed separately below.

The ftdi_sio driver was fixed last summer and the fix backported to
stable. These patches probably should go in through 3.9-rc (at least the
first mos7840-fix), but I leave that up to you to decide Greg.

All patches, except pl2303, have been compile tested only.

Johan


v2:
 - fix the ch341, cypress_m8, f81232, io_edgeport patches
 - split the mos7840 fix in two
 - add fix also for spcp8x5

Johan Hovold (15):
  USB: ark3116: fix TIOCMIWAIT and disconnect
  USB: ch341: fix TIOCMIWAIT and disconnect
  USB: cypress_m8: fix TIOCMIWAIT and disconnect
  USB: f81232: fix TIOCMIWAIT and disconnect
  USB: io_edgeport: fix TIOCMIWAIT and disconnect
  USB: io_ti: fix TIOCMIWAIT and disconnect
  USB: mct_u232: fix TIOCMIWAIT and disconnect
  USB: mos7840: fix broken TIOCMIWAIT
  USB: mos7840: fix TIOCMIWAIT and disconnect
  USB: oti6858: fix TIOCMIWAIT and disconnect
  USB: pl2303: fix TIOCMIWAIT and disconnect
  USB: quatech2: fix TIOCMIWAIT and disconnect
  USB: spcp8x5: fix TIOCMIWAIT and disconnect
  USB: ssu100: fix TIOCMIWAIT and disconnect
  USB: ti_usb_3410_5052: fix TIOCMIWAIT and disconnect

 drivers/usb/serial/ark3116.c          |  9 +++++----
 drivers/usb/serial/ch341.c            |  5 ++++-
 drivers/usb/serial/cypress_m8.c       | 12 +++++++-----
 drivers/usb/serial/f81232.c           |  4 ++++
 drivers/usb/serial/io_edgeport.c      |  9 ++++++---
 drivers/usb/serial/io_ti.c            | 10 +++++++---
 drivers/usb/serial/mct_u232.c         |  9 ++++++---
 drivers/usb/serial/mos7840.c          | 17 +++++++++++------
 drivers/usb/serial/oti6858.c          |  7 +++++++
 drivers/usb/serial/pl2303.c           |  4 ++++
 drivers/usb/serial/quatech2.c         | 13 ++++++-------
 drivers/usb/serial/spcp8x5.c          |  4 ++++
 drivers/usb/serial/ssu100.c           | 13 ++++++-------
 drivers/usb/serial/ti_usb_3410_5052.c |  9 ++++++---
 14 files changed, 83 insertions(+), 42 deletions(-)

-- 
1.8.1.1

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to