3c59x: Call dev_consume_skb_any instead of dev_kfree_skb.
authorEric W. Biederman <ebiederm@xmission.com>
Sat, 15 Mar 2014 22:31:09 +0000 (15:31 -0700)
committerEric W. Biederman <ebiederm@xmission.com>
Mon, 24 Mar 2014 22:17:22 +0000 (15:17 -0700)
Replace dev_kfree_skb with dev_consume_skb_any in vortex_start_xmit
as it can be called in hard irq and other contexts.

dev_consume_skb_any is used when vortext_start_xmit directly consumes
the packet instead of dmaing it to the device.

Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
drivers/net/ethernet/3com/3c59x.c

index 238ccea965c8a1528c10d7477753fcc1ad068ca0..61477b8e8d24caa9941bc3e706518145f216722a 100644 (file)
@@ -2086,7 +2086,7 @@ vortex_start_xmit(struct sk_buff *skb, struct net_device *dev)
                /* ... and the packet rounded to a doubleword. */
                skb_tx_timestamp(skb);
                iowrite32_rep(ioaddr + TX_FIFO, skb->data, (skb->len + 3) >> 2);
-               dev_kfree_skb (skb);
+               dev_consume_skb_any (skb);
                if (ioread16(ioaddr + TxFree) > 1536) {
                        netif_start_queue (dev);        /* AKPM: redundant? */
                } else {