ppc: fix sungem NAPI
PATCH 1/1 ppc: fix sungem NAPI
Hi !
The recent sungem NAPI change introduced a bug: dev_kfree_skb() is called within the spinlock, thus triggers all sort of WARN_ON's later on down the stack.
This patch changes it to dev_kfree_skb_any(), I hope that is fine as we aren't really in interrupt, are we ? (I don't know in what context NAPI polling occurs, is it a timer IRQ ?)
Ben.
===== drivers/net/sungem.c 1.59 vs edited =====
drivers/net/sungem.c +1 -1
@@ -651,7 +651,7 @@ } gp->net_stats.tx_packets++; -dev_kfree_skb (skb); +dev_kfree_skb_any (skb); } gp->tx_old = entry;
David S. Miller
maintainerQuoted 7 lines · On Fri, 10 Sep 2004 13:49:17 +1000 Benjamin Herrenschmidt…
The recent sungem NAPI change introduced a bug:
dev_kfree_skb()is called within the spinlock, thus triggers all sort of WARN_ON's later on down the stack.This patch changes it to
dev_kfree_skb_any(), I hope that is fine as we aren't really in interrupt, are we ? (I don't know in what context NAPI polling occurs, is it a timer IRQ ?)
NAPI polling occurs from softirq context.
Thanks for making me aware of this. This fix is fine for now, but it may be possible to simplify it and I'll look into that.