Re: Irq context wrong for USB ACM serial driver calling PPP?

From: Jamie Lokier (lu@tantalophile.demon.co.uk)
Date: Mon Mar 06 2000 - 18:40:33 EST


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/



This archive was generated by hypermail 2b29 : Tue Mar 07 2000 - 21:00:21 EST