diff options
author | Mitch Williams <mitch.a.williams@intel.com> | 2005-06-23 03:41:00 -0400 |
---|---|---|
committer | Jeff Garzik <jgarzik@pobox.com> | 2005-06-23 03:41:00 -0400 |
commit | b2b3d8247951f298897b395599849957ee271c55 (patch) | |
tree | e6e5f7698d06d83e861210e6cf427ce3262d78fc /drivers | |
parent | a4936044001694f033fe4ea94d6034d51a6b465c (diff) | |
download | linux-3.10-b2b3d8247951f298897b395599849957ee271c55.tar.gz linux-3.10-b2b3d8247951f298897b395599849957ee271c55.tar.bz2 linux-3.10-b2b3d8247951f298897b395599849957ee271c55.zip |
e1000: fix spinlock bug
This patch fixes an obvious and nasty bug where we could exit the transmit
routine while holding tx_lock.
Signed-off-by: Mitch Williams <mitch.a.williams@intel.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/e1000/e1000_main.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c index 325495b8b60..137226d98d4 100644 --- a/drivers/net/e1000/e1000_main.c +++ b/drivers/net/e1000/e1000_main.c @@ -2307,6 +2307,7 @@ e1000_xmit_frame(struct sk_buff *skb, struct net_device *netdev) tso = e1000_tso(adapter, skb); if (tso < 0) { dev_kfree_skb_any(skb); + spin_unlock_irqrestore(&adapter->tx_lock, flags); return NETDEV_TX_OK; } |