blob: cd624cbc631a9480269b5d8c6e22c759baa9b335 [file] [log] [blame]
From shemminger@linux-foundation.org Mon Feb 26 17:36:04 2007
From: Stephen Hemminger <shemminger@linux-foundation.org>
Date: Mon, 26 Feb 2007 17:18:36 -0800
Subject: sky2: kfree_skb with IRQ with netconsole
To: Greg KH <greg@kroah.com>
Cc: stable@kernel.org
Message-ID: <20070227012021.494864678@linux-foundation.org>
Content-Disposition: inline; filename=sky2-netconsole-free.patch
From: Stephen Hemminger <shemminger@linux-foundation.org>
When using netconsole, it is possible for the driver to try and
free skb's with IRQ's disabled. This could cause problems if the skb
had a destructor function that didn't expect this. The documented semantics
is that skb->destructor callback happens in softirq.
Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
drivers/net/sky2.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- linux-2.6.19.5.orig/drivers/net/sky2.c
+++ linux-2.6.19.5/drivers/net/sky2.c
@@ -1454,7 +1454,7 @@ static void sky2_tx_complete(struct sky2
if (unlikely(netif_msg_tx_done(sky2)))
printk(KERN_DEBUG "%s: tx done %u\n",
dev->name, idx);
- dev_kfree_skb(re->skb);
+ dev_kfree_skb_any(re->skb);
}
le->opcode = 0; /* paranoia */