The patch titled fix irq problem with NAPI + NETPOLL has been removed from the -mm tree. Its filename was 8139too-fix-irq-problem-with-napi-netpoll.patch This patch was dropped because it was nacked by the maintainer ------------------------------------------------------ Subject: fix irq problem with NAPI + NETPOLL From: Atsushi Nemoto <anemo@xxxxxxxxxxxxx> It seems netif_receive_skb() was designed not to call from irq context, but NAPI + NETPOLL break this rule. If netif_receive_skb() was called from irq context, redirect to netif_rx() instead of processing the skb in that context. Signed-off-by: Atsushi Nemoto <anemo@xxxxxxxxxxxxx> Cc: Jeff Garzik <jeff@xxxxxxxxxx> Cc: Francois Romieu <romieu@xxxxxxxxxxxxx> Cc: "David S. Miller" <davem@xxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- net/core/dev.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff -puN net/core/dev.c~8139too-fix-irq-problem-with-napi-netpoll net/core/dev.c --- a/net/core/dev.c~8139too-fix-irq-problem-with-napi-netpoll +++ a/net/core/dev.c @@ -1759,8 +1759,15 @@ int netif_receive_skb(struct sk_buff *sk __be16 type; /* if we've gotten here through NAPI, check netpoll */ - if (skb->dev->poll && netpoll_rx(skb)) - return NET_RX_DROP; +#ifdef CONFIG_NET_POLL_CONTROLLER + if (skb->dev->poll && skb->dev->poll_controller) { + /* NAPI poll might be called in irq context on NETPOLL */ + if (in_irq() || irqs_disabled()) + return netif_rx(skb); + if (netpoll_rx(skb)) + return NET_RX_DROP; + } +#endif if (!skb->tstamp.tv64) net_timestamp(skb); _ Patches currently in -mm which might be from anemo@xxxxxxxxxxxxx are origin.patch git-kbuild.patch git-netdev-all.patch 8139too-fix-irq-problem-with-napi-netpoll.patch serial-allocate-minor-device-numbers-for.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html