diff options
authorEric W. Biederman <ebiederm@xmission.com>2014-03-15 18:25:05 -0700
committerEric W. Biederman <ebiederm@xmission.com>2014-03-24 21:19:22 -0700
commit001eadf6ec9764786f1719b4f4375108db3811dd (patch)
parent4b3afc6e386bdacbce8326afcf8040a632050d3a (diff)
via-velocity: Call dev_kfree_skb_any instead of kfree_skb.
Replace dev_kfree_skb with dev_kfree_skb_any in velocity_xmit that can be called in hard irq and other contexts. Packets are freed and dropped in velocity_xmit when they are too fragmented and can not be linearized. Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/ethernet/via/via-velocity.c b/drivers/net/ethernet/via/via-velocity.c
index ad61d26a44f3..de08e86db209 100644
--- a/drivers/net/ethernet/via/via-velocity.c
+++ b/drivers/net/ethernet/via/via-velocity.c
@@ -2565,7 +2565,7 @@ static netdev_tx_t velocity_xmit(struct sk_buff *skb,
/* The hardware can handle at most 7 memory segments, so merge
* the skb if there are more */
if (skb_shinfo(skb)->nr_frags > 6 && __skb_linearize(skb)) {
- kfree_skb(skb);
+ dev_kfree_skb_any(skb);
return NETDEV_TX_OK;

Privacy Policy