From: Will Newton Date: Tue, 28 Oct 2008 10:52:36 +0000 (+0000) Subject: drivers/net/smc911x.c: Fix lockdep warning on xmit. X-Git-Tag: v2.6.28-rc4~86^2~13 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=70d9d15833864e7120c3ffcfdbd6fa61f5f9726a;p=linux-2.6-omap-h63xx.git drivers/net/smc911x.c: Fix lockdep warning on xmit. dev_kfree_skb should not be called with irqs disabled, use dev_kfree_skb_irq instead. The warning caused looks like this: ====================================================== [ INFO: hard-safe -> hard-unsafe lock order detected ] 2.6.28-rc1 #273 ------------------------------------------------------ swapper/0 [HC0[0]:SC1[2]:HE0:SE0] is trying to acquire: (clock-AF_INET){-..+}, at: [<4015c17c>] _sock_def_write_space+0x28/0xd8 and this task is already holding: (&lp->lock){++..}, at: [<4013f230>] _smc911x_hard_start_xmit+0x30/0x4b8 which would create a new lock dependency: (&lp->lock){++..} -> (clock-AF_INET){-..+} Signed-off-by: Will Newton Signed-off-by: Jeff Garzik --- diff --git a/drivers/net/smc911x.c b/drivers/net/smc911x.c index f59c7772f34..5051554ff05 100644 --- a/drivers/net/smc911x.c +++ b/drivers/net/smc911x.c @@ -499,7 +499,7 @@ static void smc911x_hardware_send_pkt(struct net_device *dev) #else SMC_PUSH_DATA(lp, buf, len); dev->trans_start = jiffies; - dev_kfree_skb(skb); + dev_kfree_skb_irq(skb); #endif if (!lp->tx_throttle) { netif_wake_queue(dev);