From: Mitch Williams Date: Tue, 21 Jun 2005 20:21:42 +0000 (-0700) Subject: [PATCH] e1000: fix spinlock bug X-Git-Tag: v2.6.12.2~4 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=26b1062c23e46c111f5e86bc8ce4d5007805b51a;p=thirdparty%2Fkernel%2Fstable.git [PATCH] 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 Signed-off-by: Chris Wright --- diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c index 325495b8b60c6..137226d98d476 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; }