tg3: Call dev_kfree_skby_any instead of dev_kfree_skb.
Replace dev_kfree_skb with dev_kfree_skb_any in functions that can be called in hard irq and other contexts. Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
f458b2ee93
commit
497a27b9e1
|
@ -6593,7 +6593,7 @@ static void tg3_tx(struct tg3_napi *tnapi)
|
|||
pkts_compl++;
|
||||
bytes_compl += skb->len;
|
||||
|
||||
dev_kfree_skb(skb);
|
||||
dev_kfree_skb_any(skb);
|
||||
|
||||
if (unlikely(tx_bug)) {
|
||||
tg3_tx_recover(tp);
|
||||
|
@ -6924,7 +6924,7 @@ static int tg3_rx(struct tg3_napi *tnapi, int budget)
|
|||
|
||||
if (len > (tp->dev->mtu + ETH_HLEN) &&
|
||||
skb->protocol != htons(ETH_P_8021Q)) {
|
||||
dev_kfree_skb(skb);
|
||||
dev_kfree_skb_any(skb);
|
||||
goto drop_it_no_recycle;
|
||||
}
|
||||
|
||||
|
@ -7807,7 +7807,7 @@ static int tigon3_dma_hwbug_workaround(struct tg3_napi *tnapi,
|
|||
PCI_DMA_TODEVICE);
|
||||
/* Make sure the mapping succeeded */
|
||||
if (pci_dma_mapping_error(tp->pdev, new_addr)) {
|
||||
dev_kfree_skb(new_skb);
|
||||
dev_kfree_skb_any(new_skb);
|
||||
ret = -1;
|
||||
} else {
|
||||
u32 save_entry = *entry;
|
||||
|
@ -7822,13 +7822,13 @@ static int tigon3_dma_hwbug_workaround(struct tg3_napi *tnapi,
|
|||
new_skb->len, base_flags,
|
||||
mss, vlan)) {
|
||||
tg3_tx_skb_unmap(tnapi, save_entry, -1);
|
||||
dev_kfree_skb(new_skb);
|
||||
dev_kfree_skb_any(new_skb);
|
||||
ret = -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
dev_kfree_skb(skb);
|
||||
dev_kfree_skb_any(skb);
|
||||
*pskb = new_skb;
|
||||
return ret;
|
||||
}
|
||||
|
@ -7871,7 +7871,7 @@ static int tg3_tso_bug(struct tg3 *tp, struct sk_buff *skb)
|
|||
} while (segs);
|
||||
|
||||
tg3_tso_bug_end:
|
||||
dev_kfree_skb(skb);
|
||||
dev_kfree_skb_any(skb);
|
||||
|
||||
return NETDEV_TX_OK;
|
||||
}
|
||||
|
@ -8093,7 +8093,7 @@ static netdev_tx_t tg3_start_xmit(struct sk_buff *skb, struct net_device *dev)
|
|||
tg3_tx_skb_unmap(tnapi, tnapi->tx_prod, --i);
|
||||
tnapi->tx_buffers[tnapi->tx_prod].skb = NULL;
|
||||
drop:
|
||||
dev_kfree_skb(skb);
|
||||
dev_kfree_skb_any(skb);
|
||||
drop_nofree:
|
||||
tp->tx_dropped++;
|
||||
return NETDEV_TX_OK;
|
||||
|
|
Loading…
Reference in New Issue