[regression] e1000e broke e1000 (was: Re: [ANNOUNCE] e1000 to e1000e migration of PCI Express devices)

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Kok, Auke <auke-jan.h.kok@...>
Cc: Linux Kernel Mailing List <linux-kernel@...>, NetDev <netdev@...>, e1000-list <e1000-devel@...>, linux-pci maillist <linux-pci@...>, Jeff Garzik <jeff@...>, Andrew Morton <akpm@...>, David S. Miller <davem@...>, Linus Torvalds <torvalds@...>, Jesse Brandeburg <jesse.brandeburg@...>, Ronciak, John <john.ronciak@...>, Allan, Bruce W <bruce.w.allan@...>, Greg KH <greg@...>, Arjan van de Ven <arjan@...>, Rafael J. Wysocki <rjw@...>
Date: Tuesday, April 8, 2008 - 2:39 pm

* Kok, Auke <auke-jan.h.kok@intel.com> wrote:



this is a simple bzImage kernel, no modules at all. Here's the full 
regression report:

kernel used: latest -git, head 7180c4c9e09888db0a188f729c96c6d7bd61fa83. 
Regression seems to have been introduced into v2.6.25 by this commit:

| commit 040babf9d84e7010c457e9ce69e9eb1c27927c9e
| Author: Auke Kok <auke-jan.h.kok@intel.com>
| Date:   Wed Oct 31 15:22:05 2007 -0700
|
|    e1000/e1000e: Move PCI-Express device IDs over to e1000e

v2.6.25-rc8 regresses relative to v2.6.24, with the following config, 
which config works fine in v2.6.24:

   http://redhat.com/~mingo/misc/config.e1000.bad

the eth0 interface is not detected at all:

   http://redhat.com/~mingo/misc/dmesg.e1000.bad

after more than an hour of experimenting around and bisecting the 
.config variances it turned out that turning off E1000E driver _module_ 
completely (which isnt even loaded, nor attempted to be loaded) made the 
kernel boot again:

   http://redhat.com/~mingo/misc/config.e1000.good

and the e1000 interface is detected fine just like it was in v2.6.24:

   http://redhat.com/~mingo/misc/dmesg.e1000.good

the difference in the config is:

--- config.e1000.good	2008-04-08 20:24:30.000000000 +0200
+++ config.e1000.bad	2008-04-08 20:20:53.000000000 +0200
@@ -1400,8 +1400,8 @@ CONFIG_DL2K=m
 CONFIG_E1000=y
 CONFIG_E1000_NAPI=y
 # CONFIG_E1000_DISABLE_PACKET_SPLIT is not set
-# CONFIG_E1000E is not set
-# CONFIG_E1000E_ENABLED is not set
+CONFIG_E1000E=m
+CONFIG_E1000E_ENABLED=y
 # CONFIG_IP1000 is not set
 # CONFIG_IGB is not set
 CONFIG_NS83820=m

it results in the following bootup difference:

--- dmesg.e1000.good	2008-04-08 20:27:20.000000000 +0200
+++ dmesg.e1000.bad	2008-04-08 20:27:20.000000000 +0200
@@ -1269,14 +1269,8 @@ initcall 0xc06b7ce9 ran for 0 msecs: cpq
 Calling initcall 0xc06b81e1: e1000_init_module+0x0/0x6e()
 Intel(R) PRO/1000 Network Driver - version 7.3.20-k2-NAPI
 Copyright (c) 1999-2006 Intel Corporation.
-ACPI: PCI Interrupt 0000:02:00.0[A] -> GSI 16 (level, low) -> IRQ 16
-PCI: Setting latency timer of device 0000:02:00.0 to 64
-e1000: 0000:02:00.0: e1000_probe: (PCI Express:2.5Gb/s:Width x1) 00:16:41:17:49:d2
-e1000: 0000:02:00.0: e1000_probe: This device (id 8086:109a) will no longer be supported by this driver in the future.
-e1000: 0000:02:00.0: e1000_probe: please use the "e1000e" driver instead.
-e1000: eth0: e1000_probe: Intel(R) PRO/1000 Network Connection
 initcall 0xc06b81e1: e1000_init_module+0x0/0x6e() returned 0.
-initcall 0xc06b81e1 ran for 81 msecs: e1000_init_module+0x0/0x6e()
+initcall 0xc06b81e1 ran for 0 msecs: e1000_init_module+0x0/0x6e()
 Calling initcall 0xc06b824f: e100_init_module+0x0/0x4d()
 e100: Intel(R) PRO/100 Network Driver, 3.5.23-k4-NAPI
 e100: Copyright(c) 1999-2006 Intel Corporation
@@ -2087,7 +2080,6 @@ warning: `dbus-daemon' uses 32-bit capab
 	Capabilities: [e0] Express Endpoint, MSI 00
 	Capabilities: [100] Advanced Error Reporting <?>
 	Capabilities: [140] Device Serial Number d2-49-17-ff-ff-41-16-00
-	Kernel driver in use: e1000
 
 03:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02)
 	Subsystem: Intel Corporation Unknown device 1010

so the pure presence of the e1000e module breaks the e1000 driver. That 
is a regression and a bug that should be fixed.

	Ingo
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[regression] e1000e broke e1000 (was: Re: [ANNOUNCE] e1000 t..., Ingo Molnar, (Tue Apr 8, 2:39 pm)
showing which hardware is unclaimed, Rick Jones, (Tue Apr 8, 4:13 pm)
Re: showing which hardware is unclaimed, Martin Mares, (Tue Apr 8, 4:35 pm)
Re: [regression] e1000e broke e1000, Dan Noe, (Tue Apr 8, 4:12 pm)
Re: [regression] e1000e broke e1000, Matthew Wilcox, (Tue Apr 8, 4:20 pm)
Re: [regression] e1000e broke e1000, Dan Noe, (Tue Apr 8, 4:39 pm)
Re: [regression] e1000e broke e1000, Ingo Molnar, (Tue Apr 8, 4:35 pm)
Re: [regression] e1000e broke e1000, Martin Mares, (Tue Apr 8, 4:36 pm)
Re: [regression] e1000e broke e1000, Bill Davidsen, (Wed Apr 9, 8:52 pm)
Re: [regression] e1000e broke e1000, Ingo Molnar, (Fri Apr 11, 4:59 am)
Re: [regression] e1000e broke e1000, Jeff Garzik, (Tue Apr 8, 3:56 pm)
Re: [regression] e1000e broke e1000, Ingo Molnar, (Tue Apr 8, 4:06 pm)
Re: [regression] e1000e broke e1000, Kok, Auke, (Tue Apr 8, 4:31 pm)
Re: [regression] e1000e broke e1000, Ingo Molnar, (Wed Apr 9, 3:12 pm)
Re: [regression] e1000e broke e1000, Jeff Garzik, (Wed Apr 9, 3:33 pm)
Re: [regression] e1000e broke e1000, Ingo Molnar, (Fri Apr 11, 7:30 am)
Re: [regression] e1000e broke e1000, Chris Friesen, (Fri Apr 11, 11:40 am)
Re: [regression] e1000e broke e1000, Willy Tarreau, (Fri Apr 11, 3:29 pm)
Re: [regression] e1000e broke e1000, Jeff Garzik, (Tue Apr 8, 4:19 pm)
Re: [regression] e1000e broke e1000, Ingo Molnar, (Tue Apr 8, 4:33 pm)
Re: [regression] e1000e broke e1000, Jeff Garzik, (Tue Apr 8, 4:56 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Chris Friesen, (Thu Apr 10, 5:20 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Ingo Molnar, (Thu Apr 10, 3:27 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Ingo Molnar, (Fri Apr 11, 7:26 am)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Christoph Hellwig, (Fri Apr 11, 7:36 am)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Ingo Molnar, (Fri Apr 11, 8:16 am)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Martin Mares, (Fri Apr 11, 1:10 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Christoph Hellwig, (Fri Apr 11, 12:45 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Linus Torvalds, (Fri Apr 11, 1:34 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Daniel Barkalow, (Fri Apr 11, 6:06 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Linus Torvalds, (Fri Apr 11, 7:00 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Jeff Garzik, (Fri Apr 11, 7:43 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Linus Torvalds, (Sun Apr 13, 5:13 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Ondrej Zary, (Sun Apr 13, 5:34 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Christoph Hellwig, (Sat Apr 12, 9:07 am)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Daniel Barkalow, (Fri Apr 11, 7:15 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Jeff Garzik, (Fri Apr 11, 6:21 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Daniel Barkalow, (Fri Apr 11, 7:05 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Matthew Wilcox, (Fri Apr 11, 1:53 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Linus Torvalds, (Fri Apr 11, 2:51 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Krzysztof Halasa, (Fri Apr 11, 4:22 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Linus Torvalds, (Fri Apr 11, 4:29 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Matthew Wilcox, (Fri Apr 11, 3:01 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Linus Torvalds, (Fri Apr 11, 4:21 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Willy Tarreau, (Fri Apr 11, 3:25 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Matthew Wilcox, (Fri Apr 11, 3:38 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Philip Craig, (Thu Apr 10, 8:46 pm)
Re: [patch] e1000=y &amp;&amp; e1000e=m regression fix, Randy Dunlap, (Thu Apr 10, 5:44 pm)
Re: [E1000-devel] [regression] e1000e broke e1000, Kok, Auke, (Tue Apr 8, 4:47 pm)