> -----Original Message----- > From: linux-usb-owner@xxxxxxxxxxxxxxx [mailto:linux-usb- > owner@xxxxxxxxxxxxxxx] On Behalf Of Maulik > Sent: Tuesday, April 06, 2010 7:24 PM > To: 'Alan Cox'; 'Greg KH' > Cc: linux-usb@xxxxxxxxxxxxxxx > Subject: RE: g_serial: scheduling while atomic bug > > > > > Trace is fairly clear - someone has tty->low_latency set when they > > shouldn't. As a result the push to the ldisc ran n_tty in the wrong > > context. So its a driver bug. > > Yes I just found that disabling tty->low_latency in u_serial.c resolves > the > issue. > The test works in the two cases as listed below for me. (1) Setting tty->low_latency = 0 in u_serial.c (2) Using the patch at [1] which uses a workqueue instead of tasklet in u_serial.c [1] http://marc.info/?l=linux-usb&m=126405382220848&w=2 Cliff, You mentioned at [2] that "Disabling tty_low_latency doesn't work". Did you face any practical issues or was it related to theoretical concern of "waking up the read thread right after calling tty_flip_buffer_push()"? [2] http://marc.info/?l=linux-usb&m=126408502425287&w=2 Thanks, Maulik -- 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