Re: [git patch] urgent e1000 fix
From: David Lang
Date: Thu Jun 23 2005 - 16:11:52 EST
hmm, I know I'm not that experianced with patch, but when I saved this to
a file and did patch -p1 <file the hunk was rejected, the reject file is
saying
***************
*** 2307,2312 ****
tso = e1000_tso(adapter, skb);
if (tso < 0) {
dev_kfree_skb_any(skb);
return NETDEV_TX_OK;
}
--- 2307,2313 ----
tso = e1000_tso(adapter, skb);
if (tso < 0) {
dev_kfree_skb_any(skb);
+ spin_unlock_irqrestore(&adapter->tx_lock, flags);
return NETDEV_TX_OK;
}
I manually put the line in and am compiling it now to test it, but is
someone could take a few seconds and teach me what I did wrong it would be
appriciated.
David Lang
On Thu, 23 Jun 2005, Jeff Garzik wrote:
Date: Thu, 23 Jun 2005 05:24:05 -0400
From: Jeff Garzik <jgarzik@xxxxxxxxx>
To: Andrew Morton <akpm@xxxxxxxx>, Linus Torvalds <torvalds@xxxxxxxx>
Cc: Linux Kernel <linux-kernel@xxxxxxxxxxxxxxx>,
Netdev List <netdev@xxxxxxxxxxxxxxx>
Subject: [git patch] urgent e1000 fix
Please pull from 'misc-fixes' branch of
rsync://rsync.kernel.org/pub/scm/linux/kernel/git/jgarzik/netdev-2.6.git
to obtain the spinlock fix described in the attached text.
--
There are two ways of constructing a software design. One way is to make it so simple that there are obviously no deficiencies. And the other way is to make it so complicated that there are no obvious deficiencies.
-- C.A.R. Hoare
drivers/net/e1000/e1000_main.c | 1 +
1 files changed, 1 insertion(+)
Mitch Williams:
e1000: fix spinlock bug
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c
--- 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, st
tso = e1000_tso(adapter, skb);
if (tso < 0) {
dev_kfree_skb_any(skb);
+ spin_unlock_irqrestore(&adapter->tx_lock, flags);
return NETDEV_TX_OK;
}