Messages in this thread | | | Date | Tue, 7 Mar 2000 00:40:33 +0100 | From | Jamie Lokier <> | Subject | Re: Irq context wrong for USB ACM serial driver calling PPP? |
| |
Alan Cox wrote: > > I agree it's a good idea to change USB ACM. Probably the USB serial > > driver needs to be changed too. > > Serial drivers post data from their irq handler and queue it for the > line discipline which then runs in BH context - that bit is fine.
The problem with USB ACM is that it queues the data from its irq handler, and calls the line discipline's write_wakeup from irq context. The standard PC serial driver calls write_wakeup from BH context.
PPP's write_wakeup then does some complicated stuff which isn't quite irq safe, but could probably be made so.
Are you saying that the line discipline's write_wakeup should be a simple function to queue the line discipline's BH (that's what "wakeup" means to me), or that write_wakeup must be called from BH context by the serial driver?
-- Jamie
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |