ChangeSet 1.879.9.5, 2003/01/06 16:01:14-08:00, oliver@neukum.name [PATCH] USB: kaweth freeing skbs this is the 2.5 version of the 2.4 fix - proper freeing of skbs diff -Nru a/drivers/usb/net/kaweth.c b/drivers/usb/net/kaweth.c --- a/drivers/usb/net/kaweth.c Wed Jan 8 12:02:08 2003 +++ b/drivers/usb/net/kaweth.c Wed Jan 8 12:02:08 2003 @@ -703,7 +703,7 @@ kaweth_dbg("%s: TX status %d.", kaweth->net->name, urb->status); netif_wake_queue(kaweth->net); - dev_kfree_skb(skb); + dev_kfree_skb_irq(skb); } /**************************************************************** @@ -721,7 +721,7 @@ if (kaweth->removed) { /* our device is undergoing disconnection - we bail out */ spin_unlock(&kaweth->device_lock); - dev_kfree_skb(skb); + dev_kfree_skb_irq(skb); return 0; } @@ -733,7 +733,7 @@ /* no such luck - we make our own */ struct sk_buff *copied_skb; copied_skb = skb_copy_expand(skb, 2, 0, GFP_ATOMIC); - dev_kfree_skb_any(skb); + dev_kfree_skb_irq(skb); skb = copied_skb; if (!copied_skb) { kaweth->stats.tx_errors++; @@ -763,7 +763,7 @@ kaweth->stats.tx_errors++; netif_start_queue(net); - dev_kfree_skb(skb); + dev_kfree_skb_irq(skb); } else {