On Thu, 08 Mar 2007 10:35:13 +0900 (JST), Atsushi Nemoto <[EMAIL PROTECTED]> wrote: > > netpoll_rx() should be invokable from hardware interrupt context. > > What is the crash you are seeing? > > The problem is not netpoll_rx(). It should be called from irq context. > The problem is, netif_receive_skb() is called from irq context though > it seems not designed to do so.
Unfortunately I could not reproduce the crash, but IIRC the crash was happened at upper protocol layer on hardware interrupt context. Anyway, I think main path of netif_receive_skb() should not be executed in hardware interrupt context. Is it wrong? > > It looks like perhaps the kfree_skb() calls need to be modified > > in __netpoll_rx(). > > Well, it seems an another netpoll bug. I suppose these kfree_skb() in __netpoll_rx() should be dev_kfree_skb_any(). And I found an another abuse which is irrelevant to netpoll. The netif_rx() calls kfree_skb() at its bottom. The netif_rx() should be callable from hardware interrupt context, so it should be changed to dev_kfree_skb_any(). Is it right? --- Atsushi Nemoto - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html