Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f955e141 authored by Dan Carpenter's avatar Dan Carpenter Committed by David S. Miller
Browse files

vmxnet3: locking problems in xmit



There were several paths that didn't release their locks.

Signed-off-by: default avatarDan Carpenter <error27@gmail.com>
Signed-off-by: default avatarBhavesh Davda <bhavesh@vmware.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 6561a3b1
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -980,7 +980,7 @@ vmxnet3_tq_xmit(struct sk_buff *skb, struct vmxnet3_tx_queue *tq,
		}
	} else {
		tq->stats.drop_hdr_inspect_err++;
		goto drop_pkt;
		goto unlock_drop_pkt;
	}

	/* fill tx descs related to addr & len */
@@ -1052,6 +1052,8 @@ vmxnet3_tq_xmit(struct sk_buff *skb, struct vmxnet3_tx_queue *tq,

hdr_too_big:
	tq->stats.drop_oversized_hdr++;
unlock_drop_pkt:
	spin_unlock_irqrestore(&tq->tx_lock, flags);
drop_pkt:
	tq->stats.drop_total++;
	dev_kfree_skb(skb);