Messages in this thread | | | Date | Mon, 6 Mar 2000 18:38:17 +0100 | From | Vojtech Pavlik <> | Subject | Re: Irq context wrong for USB ACM serial driver calling PPP? |
| |
On Mon, Mar 06, 2000 at 06:33:58PM +0100, Jamie Lokier wrote:
> Andi Kleen wrote: > > > My log just filled up. Lots and lots of dubious messages about bad skbs > > > and hard IRQs. It's a ppp link that worked fine with 2.3.40. > > > > The bad skbs message come from NETFILTER_DEBUG. Turn that off. > > > > The hard irq messages mean that the USB driver is not converted to the > > new kfree_skb() scheme yet. Replace the kfree_skb that run in interrupt > > context with kfree_skb_irq() (or kfree_skb_any() if you are not sure or > > if it can run in both process/irq context) > > The USB driver doesn't do anything with skbs -- the PPP driver does all > that. So the PPP driver should be changed to do kfree_skb_any(), right? > > > > The hard IRQ might be because I'm using a USB modem. I think the USB > > > ACM driver might be calling ppp code from irq context which is called > > > from bh context by the standard serial driver. > > > > Sounds like a bug -- the PPP driver is probably not reentrant enough for > > that. > > Vojtech/Al care to comment? What should be changed: USB ACM driver to > call PPP from bh context or PPP to accept calls from irq context? > > Either way, this part of the tty interface is not well documented.
Well, the USB ACM driver does just tty_flip_buffer_push() from an interrupt, which I think is normal even for other drivers? Well, if not, I can change it ...
Hmm, it also calls a tty->ldisc.write_wakeup from an interrupt. Might this be the cause?
-- Vojtech Pavlik SuSE Labs
- 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/
| |