On Sun, 27 Sep 2009, Alan Cox wrote: > > > What backtrace do you get from the WARN_ON when that occurs. I'm trying > > > to work out how it happens in the first place because really it would be > > > better if it simply didn't happen at all. > > > > drivers/usb/serial/usb-serial.c: serial_close - port 0 > > drivers/usb/serial/usb-serial.c: serial_chars_in_buffer = port 0 > > drivers/usb/serial/ftdi_sio.c: ftdi_chars_in_buffer - port 0 > > drivers/usb/serial/ftdi_sio.c: ftdi_close > > drivers/usb/serial/usb-serial.c: serial_unthrottle - port 0 > > So its during the close not after it - that's not unreasonable. The test > itself should either go or use ASYNCB_INITIALISED. Probably the best course is to remove all those tests entirely. Even switching over to testing ASYNCB_INITIALIZED won't work right, because that flag gets cleared before ftdi_close() is called. Under the assumption that the TTY core is working correctly, none of those tests are really needed anyway. Alan Stern -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html