Commit 98d8a65d authored by Eric W. Biederman's avatar Eric W. Biederman
Browse files

enic: Call dev_kfree_skb_any instead of dev_kfree_skb.



Replace dev_kfree_skb with dev_kfree_skb_any in enic_hard_start_xmit
that can be called in hard irq and other contexts.

enic_hard_start_xmit only frees the skb when dropping it.

Signed-off-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
parent d6bea829
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -521,7 +521,7 @@ static netdev_tx_t enic_hard_start_xmit(struct sk_buff *skb,
	unsigned int txq_map;

	if (skb->len <= 0) {
		dev_kfree_skb(skb);
		dev_kfree_skb_any(skb);
		return NETDEV_TX_OK;
	}

@@ -536,7 +536,7 @@ static netdev_tx_t enic_hard_start_xmit(struct sk_buff *skb,
	if (skb_shinfo(skb)->gso_size == 0 &&
	    skb_shinfo(skb)->nr_frags + 1 > ENIC_NON_TSO_MAX_DESC &&
	    skb_linearize(skb)) {
		dev_kfree_skb(skb);
		dev_kfree_skb_any(skb);
		return NETDEV_TX_OK;
	}