It should not call the tty write function in interrupt context.
The ldisc will call the tty write in two situtations:
1. when a new packet to send is available
2. when the tty driver calls the ldisc write_wakeup
to send queued frames
My guess is that your driver is calling write_wakeup
in an interrupt context (in response to a tx complete IRQ).
You should call write_wakeup() from a bottom half
handler scheduled by the interrupt service routine instead
of directly from the ISR.
Paul Fulghum, paulkf@microgate.com
Microgate Corporation, www.microgate.com
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/