From: Herbert Xu <herbert@gondor.apana.org.au>
To: Jeff Garzik <jgarzik@pobox.com>
Cc: "Kok, Auke" <auke-jan.h.kok@intel.com>,
Jeremy Fitzhardinge <jeremy@goop.org>,
Andrew Morton <akpm@linux-foundation.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
linux-net <linux-net@vger.kernel.org>
Subject: Re: rmmod e1000 hangs (Was Re: 2.6.22-rc2-mm1)
Date: Sat, 26 May 2007 10:10:28 +1000 [thread overview]
Message-ID: <20070526001028.GA3787@gondor.apana.org.au> (raw)
In-Reply-To: <465775BE.5040306@pobox.com>
On Fri, May 25, 2007 at 07:48:14PM -0400, Jeff Garzik wrote:
>
> Is this for -stable or upstream? I got confused with all the patches
> flying about.
>
> Send it to me, if it's for upstream.
It's for upstream. Once you take then I'll rediff it for stable.
[E1000]: Restore netif_poll_enable call but make sure IRQs are off
This restores the previously removed netif_poll_enable call in
e1000_open. It's needed on all but the first call to e1000_open
for a NIC as e1000_close always calls netif_poll_disable.
netif_poll_enable can only be called safely if no polls have been
scheduled. This should be the case as long as we don't enter our
IRQ handler.
In order to guarantee this we explicitly disable IRQs as early
as possible when we're probing the NIC.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Cheers,
--
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c
index cbc7feb..9ec35b7 100644
--- a/drivers/net/e1000/e1000_main.c
+++ b/drivers/net/e1000/e1000_main.c
@@ -1325,7 +1325,10 @@ e1000_sw_init(struct e1000_adapter *adapter)
spin_lock_init(&adapter->tx_queue_lock);
#endif
- atomic_set(&adapter->irq_sem, 1);
+ /* Explicitly disable IRQ since the NIC can be in any state. */
+ atomic_set(&adapter->irq_sem, 0);
+ e1000_irq_disable(adapter);
+
spin_lock_init(&adapter->stats_lock);
set_bit(__E1000_DOWN, &adapter->flags);
@@ -1431,6 +1434,10 @@ e1000_open(struct net_device *netdev)
/* From here on the code is the same as e1000_up() */
clear_bit(__E1000_DOWN, &adapter->flags);
+#ifdef CONFIG_E1000_NAPI
+ netif_poll_enable(netdev);
+#endif
+
e1000_irq_enable(adapter);
/* fire a link status change interrupt to start the watchdog */
next prev parent reply other threads:[~2007-05-26 0:11 UTC|newest]
Thread overview: 104+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-05-23 7:42 2.6.22-rc2-mm1 Andrew Morton
2007-05-23 7:48 ` 2.6.22-rc2-mm1 Andrew Morton
2007-05-23 9:22 ` 2.6.22-rc2-mm1 Rafael J. Wysocki
2007-05-23 14:47 ` 2.6.22-rc2-mm1 Alan Stern
2007-05-23 15:54 ` 2.6.22-rc2-mm1 Andrew Morton
2007-05-23 16:09 ` 2.6.22-rc2-mm1 Oleg Nesterov
2007-05-23 17:00 ` 2.6.22-rc2-mm1 Alan Stern
2007-05-23 16:21 ` 2.6.22-rc2-mm1 Oleg Nesterov
2007-05-23 18:41 ` 2.6.22-rc2-mm1 Alan Stern
2007-05-23 9:47 ` 2.6.22-rc2-mm1 Michal Piotrowski
2007-05-23 17:18 ` 2.6.22-rc2-mm1 Christoph Lameter
2007-05-23 21:05 ` 2.6.22-rc2-mm1 Michal Piotrowski
2007-05-23 22:01 ` 2.6.22-rc2-mm1 Andrew Morton
2007-05-23 22:18 ` 2.6.22-rc2-mm1 Michal Piotrowski
2007-05-23 22:27 ` 2.6.22-rc2-mm1 Christoph Lameter
2007-05-23 22:37 ` 2.6.22-rc2-mm1 Andrew Morton
2007-05-23 23:36 ` 2.6.22-rc2-mm1 Christoph Lameter
2007-05-24 1:21 ` 2.6.22-rc2-mm1 Randy Dunlap
2007-05-24 2:43 ` 2.6.22-rc2-mm1 Christoph Lameter
2007-05-24 3:00 ` 2.6.22-rc2-mm1 Christoph Lameter
2007-05-24 3:26 ` 2.6.22-rc2-mm1 Randy Dunlap
2007-05-24 7:31 ` 2.6.22-rc2-mm1 Ingo Molnar
2007-05-24 16:40 ` 2.6.22-rc2-mm1 Christoph Lameter
2007-05-24 21:20 ` 2.6.22-rc2-mm1 Christoph Lameter
2007-05-24 21:29 ` 2.6.22-rc2-mm1 Andrew Morton
2007-05-24 21:55 ` 2.6.22-rc2-mm1 Randy Dunlap
2007-05-24 22:35 ` 2.6.22-rc2-mm1 Christoph Lameter
2007-05-24 22:53 ` 2.6.22-rc2-mm1 Andrew Morton
2007-05-30 21:34 ` [PATCH 1/3] hexdump: more output formatting Randy Dunlap
2007-05-30 21:42 ` Christoph Lameter
2007-05-30 21:45 ` Randy Dunlap
2007-05-31 1:45 ` [PATCH 1/3 v2] " Randy Dunlap
2007-05-30 21:56 ` [PATCH 1/3] " Satyam Sharma
2007-05-30 22:03 ` Randy Dunlap
2007-05-30 22:11 ` Satyam Sharma
2007-05-30 22:18 ` Christoph Lameter
2007-05-30 22:41 ` Satyam Sharma
2007-05-30 22:44 ` Randy Dunlap
2007-05-30 22:48 ` Satyam Sharma
2007-05-30 22:59 ` Randy Dunlap
2007-05-30 22:25 ` Randy Dunlap
2007-05-30 22:36 ` Jesper Juhl
2007-05-30 23:04 ` Randy Dunlap
2007-05-30 23:07 ` Jesper Juhl
2007-05-30 21:34 ` [PATCH 2/3 -mm] slub: use lib/hexdump Randy Dunlap
2007-05-30 21:45 ` Christoph Lameter
2007-05-30 21:48 ` Randy Dunlap
2007-05-30 21:51 ` Christoph Lameter
2007-05-30 21:54 ` Randy Dunlap
2007-05-30 22:03 ` Christoph Lameter
2007-05-30 22:06 ` Randy Dunlap
2007-05-31 1:39 ` Randy Dunlap
2007-05-23 22:24 ` 2.6.22-rc2-mm1 Christoph Lameter
2007-05-23 12:01 ` 2.6.22-rc2-mm1 Gabriel C
2007-05-23 16:01 ` 2.6.22-rc2-mm1 Andrew Morton
2007-05-23 15:02 ` 2.6.22-rc2-mm1 William Lee Irwin III
2007-05-23 15:28 ` 2.6.22-rc2-mm1 William Lee Irwin III
2007-05-23 16:08 ` 2.6.22-rc2-mm1 William Lee Irwin III
2007-05-23 16:29 ` 2.6.22-rc2-mm1 William Lee Irwin III
2007-05-23 17:27 ` 2.6.22-rc2-mm1 William Lee Irwin III
2007-05-23 23:17 ` 2.6.22-rc2-mm1 Zan Lynx
2007-05-23 23:27 ` 2.6.22-rc2-mm1 Andrew Morton
2007-05-23 23:40 ` 2.6.22-rc2-mm1 Jiri Kosina
2007-05-24 3:28 ` 2.6.22-rc2-mm1 Dmitry Torokhov
2007-05-24 7:28 ` 2.6.22-rc2-mm1 Jiri Kosina
2007-05-30 14:08 ` [PATCH] Input: i8042 - cleanup of debug code (was Re: 2.6.22-rc2-mm1) Jiri Kosina
2007-05-30 14:27 ` Dmitry Torokhov
2007-05-30 14:30 ` Jiri Kosina
[not found] ` <1180058760.7001.6.camel@oberon.rnd.esoft.com>
2007-05-25 7:23 ` 2.6.22-rc2-mm1 Jiri Kosina
2007-05-23 23:50 ` 2.6.22-rc2-mm1 Andrew Morton
2007-05-24 10:36 ` rmmod e1000 hangs (Was Re: 2.6.22-rc2-mm1) Jeremy Fitzhardinge
2007-05-24 10:47 ` Herbert Xu
2007-05-24 10:54 ` Herbert Xu
2007-05-24 14:44 ` Kok, Auke
2007-05-25 12:54 ` Herbert Xu
2007-05-25 13:04 ` Herbert Xu
2007-05-25 13:32 ` Herbert Xu
2007-05-25 22:12 ` Kok, Auke
2007-05-25 23:48 ` Jeff Garzik
2007-05-26 0:10 ` Herbert Xu [this message]
2007-05-25 21:20 ` idle=poll burns my box [was Re: 2.6.22-rc2-mm1] J.A. Magallón
2007-05-25 21:52 ` Andrew Morton
2007-05-26 15:59 ` 2.6.22-rc2-mm1 Tilman Schmidt
2007-05-26 16:01 ` 2.6.22-rc2-mm1 Andrew Morton
2007-05-27 22:16 ` 2.6.22-rc2-mm1 Tilman Schmidt
2007-05-27 22:41 ` 2.6.22-rc2-mm1 Kay Sievers
2007-05-28 17:22 ` 2.6.22-rc2-mm1 Cornelia Huck
2007-05-29 7:56 ` 2.6.22-rc2-mm1 Kay Sievers
2007-05-29 7:25 ` 2.6.22-rc2-mm1 Cornelia Huck
2007-05-29 14:43 ` 2.6.22-rc2-mm1 Matt Mackall
2007-05-29 16:55 ` 2.6.22-rc2-mm1 Tilman Schmidt
2007-05-29 17:25 ` 2.6.22-rc2-mm1 Cornelia Huck
2007-06-01 12:38 ` 2.6.22-rc2-mm1 Greg KH
2007-07-03 8:50 ` 2.6.22-rc2-mm1 Cornelia Huck
2007-07-12 6:00 ` 2.6.22-rc2-mm1 Greg KH
2007-05-28 10:27 ` 2.6.22-rc2-mm1 - a different BUG: at mm/slab.c:777 __find_general_cachep() Valdis.Kletnieks
2007-05-28 10:43 ` Pekka Enberg
2007-05-28 11:12 ` Valdis.Kletnieks
2007-05-29 4:22 ` 2.6.22-rc2-mm1: SLUB Randy Dunlap
2007-05-29 17:13 ` Christoph Lameter
2007-05-29 18:13 ` Randy Dunlap
2007-05-29 18:30 ` Christoph Lameter
2007-05-29 18:32 ` Christoph Lameter
2007-05-29 18:59 ` Randy Dunlap
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20070526001028.GA3787@gondor.apana.org.au \
--to=herbert@gondor.apana.org.au \
--cc=akpm@linux-foundation.org \
--cc=auke-jan.h.kok@intel.com \
--cc=jeremy@goop.org \
--cc=jgarzik@pobox.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-net@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®