diff options
author | Eric W. Biederman <ebiederm@xmission.com> | 2014-03-15 21:25:05 -0400 |
---|---|---|
committer | Eric W. Biederman <ebiederm@xmission.com> | 2014-03-25 00:19:22 -0400 |
commit | 001eadf6ec9764786f1719b4f4375108db3811dd (patch) | |
tree | 13be97cb52a5c2642a13a6c19797160fda6d9328 | |
parent | 4b3afc6e386bdacbce8326afcf8040a632050d3a (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>
-rw-r--r-- | drivers/net/ethernet/via/via-velocity.c | 2 |
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, | |||
2565 | /* The hardware can handle at most 7 memory segments, so merge | 2565 | /* The hardware can handle at most 7 memory segments, so merge |
2566 | * the skb if there are more */ | 2566 | * the skb if there are more */ |
2567 | if (skb_shinfo(skb)->nr_frags > 6 && __skb_linearize(skb)) { | 2567 | if (skb_shinfo(skb)->nr_frags > 6 && __skb_linearize(skb)) { |
2568 | kfree_skb(skb); | 2568 | dev_kfree_skb_any(skb); |
2569 | return NETDEV_TX_OK; | 2569 | return NETDEV_TX_OK; |
2570 | } | 2570 | } |
2571 | 2571 | ||