# This is a BitKeeper generated patch for the following project:
# Project Name: Linux kernel tree
# This patch format is intended for GNU patch command version 2.5 or higher.
# This patch includes the following deltas:
# ChangeSet 1.757.40.3 -> 1.757.40.4
# drivers/net/sonic.c 1.4 -> 1.5
#
# The following is the BitKeeper ChangeSet Log
# --------------------------------------------
# 03/02/22 [email protected] 1.757.40.4
# sonic.c:
# Fix: Commented out reference to dev->tbusy.
# Fix: Use the interrupt save version of dev_kfree_skb{_irq} within the interrupt handler.
# --------------------------------------------
#
diff -Nru a/drivers/net/sonic.c b/drivers/net/sonic.c
--- a/drivers/net/sonic.c Sat Feb 22 13:29:28 2003
+++ b/drivers/net/sonic.c Sat Feb 22 13:29:28 2003
@@ -113,6 +113,7 @@
if (sonic_debug > 2)
printk("sonic_send_packet: skb=%p, dev=%p\n", skb, dev);
+#if 0
/*
* Block a timer-based transmit from overlapping. This could better be
* done with atomic_swap(1, dev->tbusy), but set_bit() works as well.
@@ -121,6 +122,7 @@
printk("%s: Transmitter access conflict.\n", dev->name);
return 1;
}
+#endif
/*
* Map the packet data into the logical DMA address space
@@ -232,7 +234,7 @@
/* We must free the original skb */
if (lp->tx_skb[entry]) {
- dev_kfree_skb(lp->tx_skb[entry]);
+ dev_kfree_skb_irq(lp->tx_skb[entry]);
lp->tx_skb[entry] = 0;
}
/* and the VDMA address */