From: Eric W. Biederman Date: Tue, 25 Mar 2014 04:13:02 +0000 (-0700) Subject: sun4i-emac: Call dev_consume_skb_any instead of dev_kfree_skb. X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=c99abc8b39d8281dad04d771bb7a2de36fec4d9f;p=linux-beck.git sun4i-emac: Call dev_consume_skb_any instead of dev_kfree_skb. Replace dev_kfree_skb with dev_consume_skb_any in emacs_start_xmit which can be called in hard irq and other contexts. emac_start_xmit always transmits the packet making dev_consume_skb the appropriate function to call. Signed-off-by: "Eric W. Biederman" --- diff --git a/drivers/net/ethernet/allwinner/sun4i-emac.c b/drivers/net/ethernet/allwinner/sun4i-emac.c index 511f6eecd58b..fcaeeb8a4929 100644 --- a/drivers/net/ethernet/allwinner/sun4i-emac.c +++ b/drivers/net/ethernet/allwinner/sun4i-emac.c @@ -476,7 +476,7 @@ static int emac_start_xmit(struct sk_buff *skb, struct net_device *dev) spin_unlock_irqrestore(&db->lock, flags); /* free this SKB */ - dev_kfree_skb(skb); + dev_consume_skb_any(skb); return NETDEV_TX_OK; }