Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 183473

Summary: ck-sources-2.6.21_p2 - Kernel Oops with with e1000 and Debug shared IRQ handlers
Product: Gentoo Linux Reporter: Daniel Watson <daniel.watsonbros>
Component: [OLD] Core systemAssignee: Micheal Marineau (RETIRED) <marineam>
Status: RESOLVED WONTFIX    
Severity: critical CC: kernel, pacho
Priority: High    
Version: unspecified   
Hardware: x86   
OS: Linux   
URL: http://www.ussg.iu.edu/hypermail/linux/kernel/0702.1/2931.html
Whiteboard:
Package list:
Runtime testing required: ---

Description Daniel Watson 2007-06-28 00:23:57 UTC
Whenever the e1000 driver is enabled and Debug shared IRQ handlers I get a kernel oops when gentoo brings up the ethernet card from ifconfig

Reproducible: Always

Steps to Reproduce:
1.install latest ck-sources (2.6.21_p2)
2.enable e1000
3.enable Debug shared IRQ handlers

Actual Results:  
Jun 27 08:47:11 itmanager-lnx BUG: unable to handle kernel NULL pointer dereference at virtual address 00000000
Jun 27 08:47:11 itmanager-lnx printing eip:
Jun 27 08:47:11 itmanager-lnx 00000000
Jun 27 08:47:11 itmanager-lnx *pde = 00000000
Jun 27 08:47:11 itmanager-lnx Oops: 0000 [#1]
Jun 27 08:47:11 itmanager-lnx PREEMPT SMP 
Jun 27 08:47:11 itmanager-lnx Modules linked in: snd_pcm_oss snd_mixer_oss cdc_acm ntfs cifs i2c_i801 i2c_core snd_intel8x0 s
nd_ac97_codec ac97_bus snd_pcm snd_timer snd snd_page_alloc
Jun 27 08:47:11 itmanager-lnx CPU:    1
Jun 27 08:47:11 itmanager-lnx EIP:    0060:[<00000000>]    Not tainted VLI
Jun 27 08:47:11 itmanager-lnx EFLAGS: 00010246   (2.6.21-ck2 #2)
Jun 27 08:47:11 itmanager-lnx EIP is at 0x0
Jun 27 08:47:11 itmanager-lnx eax: f781c500   ebx: f8840000   ecx: 00000000   edx: f781de80
Jun 27 08:47:11 itmanager-lnx esi: f781c500   edi: 00000000   ebp: f781c728   esp: cb7e1e74
Jun 27 08:47:11 itmanager-lnx ds: 007b   es: 007b   fs: 00d8  gs: 0033  ss: 0068
Jun 27 08:47:11 itmanager-lnx Process ifconfig (pid: 5179, ti=cb7e0000 task=f7fed580 task.ti=cb7e0000)
Jun 27 08:47:11 itmanager-lnx Stack: c028883a fffffff4 f76edbe0 00000000 c0288777 c0136081 00000010 01fffffe 
Jun 27 08:47:11 itmanager-lnx f781c500 f781c000 f781c000 00000000 c028820d f781c000 f781c000 f781c500 
Jun 27 08:47:11 itmanager-lnx 00000000 f781c500 00000000 c028b042 f781c000 00001043 00001002 c0392bdf 
Jun 27 08:47:11 itmanager-lnx Call Trace:
Jun 27 08:47:11 itmanager-lnx [<c028883a>] e1000_intr+0xc3/0x113
Jun 27 08:47:11 itmanager-lnx [<c0288777>] e1000_intr+0x0/0x113
Jun 27 08:47:11 itmanager-lnx [<c0136081>] request_irq+0xa7/0xce
Jun 27 08:47:11 itmanager-lnx [<c028820d>] e1000_request_irq+0xad/0xe6
Jun 27 08:47:11 itmanager-lnx [<c028b042>] e1000_open+0x43/0xc0
Jun 27 08:47:11 itmanager-lnx [<c0392bdf>] dev_open+0x2b/0x62
Jun 27 08:47:11 itmanager-lnx [<c0391628>] dev_change_flags+0x47/0xe4
Jun 27 08:47:11 itmanager-lnx [<c03c487a>] devinet_ioctl+0x23e/0x55b
Jun 27 08:47:11 itmanager-lnx [<c038a69e>] sock_ioctl+0x0/0x16a
Jun 27 08:47:11 itmanager-lnx [<c038a7e9>] sock_ioctl+0x14b/0x16a
Jun 27 08:47:11 itmanager-lnx [<c038a69e>] sock_ioctl+0x0/0x16a
Jun 27 08:47:11 itmanager-lnx [<c015c967>] do_ioctl+0x1f/0x62
Jun 27 08:47:11 itmanager-lnx [<c015cbf0>] vfs_ioctl+0x246/0x258
Jun 27 08:47:11 itmanager-lnx [<c015cc35>] sys_ioctl+0x33/0x4a
Jun 27 08:47:11 itmanager-lnx [<c01026b8>] sysenter_past_esp+0x5d/0x81
Jun 27 08:47:11 itmanager-lnx [<c03f0000>] _write_lock_irqsave+0x35/0x70
Jun 27 08:47:11 itmanager-lnx =======================
Jun 27 08:47:11 itmanager-lnx Code:  Bad EIP value.
Jun 27 08:47:11 itmanager-lnx EIP: [<00000000>] 0x0 SS:ESP 0068:cb7e1e74

Expected Results:  
I expect eth0 to come up and get an address from dhcpd.  Kernel should not Oops!

│ Symbol: E1000 [=y]                                                                                                   │  
  │ Prompt: Intel(R) PRO/1000 Gigabit Ethernet support                                                                   │  
  │   Defined at drivers/net/Kconfig:1943                                                                                │  
  │   Depends on: NET && NETDEVICES && !UML && PCI                                                                       │  
  │   Location:                                                                                                          │  
  │     -> Device Drivers                                                                                                │  
  │       -> Network device support                                                                                      │  
  │         -> Network device support (NETDEVICES [=y])                                                                  │  
  │           -> Ethernet (1000 Mbit)       


Symbol: DEBUG_SHIRQ [=y]                                                                                             │  
  │ Prompt: Debug shared IRQ handlers                                                                                    │  
  │   Defined at lib/Kconfig.debug:80                                                                                    │  
  │   Depends on: DEBUG_KERNEL && GENERIC_HARDIRQS                                                                       │  
  │   Location:                                                                                                          │  
  │     -> Kernel hacking                                                                                                │  
  │       -> Kernel debugging (DEBUG_KERNEL [=y])
Comment 1 Micheal Marineau (RETIRED) gentoo-dev 2007-06-28 06:58:43 UTC
Does this still happen with the same config on either gentoo-sources or vanilla-sources or only with ck?
Comment 2 Daniel Watson 2007-06-28 16:03:20 UTC
(In reply to comment #1)
> Does this still happen with the same config on either gentoo-sources or
> vanilla-sources or only with ck?
> 

Yes, this same config worked fine on gentoo-sources

I forgot to add that when I disable 'Debug shared IRQ handlers' in the kernel, it works fantastic.  Actually, I turned off all kernel debugging.  The reason I believe it's narrowed down to 'Debug shared IRQ handlers' is because of this: http://www.ussg.iu.edu/hypermail/linux/kernel/0702.1/2931.html

Don't ask me why I even had kernel debugging on.  It's just an option I have always had on in the kernel.
Comment 3 Micheal Marineau (RETIRED) gentoo-dev 2007-06-28 19:16:51 UTC
(In reply to comment #2)
> (In reply to comment #1)
> > Does this still happen with the same config on either gentoo-sources or
> > vanilla-sources or only with ck?
> > 
> 
> Yes, this same config worked fine on gentoo-sources
> 
> I forgot to add that when I disable 'Debug shared IRQ handlers' in the kernel,
> it works fantastic.  Actually, I turned off all kernel debugging.  The reason I
> believe it's narrowed down to 'Debug shared IRQ handlers' is because of this:
> http://www.ussg.iu.edu/hypermail/linux/kernel/0702.1/2931.html
> 
> Don't ask me why I even had kernel debugging on.  It's just an option I have
> always had on in the kernel.
> 

Ok, just to see if you are hitting the same bug you could try the patch that is proposed in that thread: http://www.ussg.iu.edu/hypermail/linux/kernel/0702.1/3023.html

The patch was applied and reverted because the fix broke MSI, but I don't know for sure if an alternative fix was ever put in.
http://www.ussg.iu.edu/hypermail/linux/kernel/0702.1/3023.html

It may be related to this patch which is included in the latest gentoo sources but not ck-sources which would explain why gentoo-sources worked: http://lkml.org/lkml/2007/6/8/89

I bumped ck-sources to _p2-r1 to include genpatches-4 which has that patch so give that a try first once it hits the portage tree in an hour or so. If that doesn't fix it try the patch I suggested above, if it does we are good to go :-)
Comment 4 Daniel Watson 2007-06-28 19:50:36 UTC
(In reply to comment #3)
> I bumped ck-sources to _p2-r1 to include genpatches-4 which has that patch so
> give that a try first once it hits the portage tree in an hour or so. If that
> doesn't fix it try the patch I suggested above, if it does we are good to go
> :-)
> 

Okay, I will sync in an hour and try it again and post the results.

I have some questions for you: Should a novice even have kernel debugging on?  Does it have any noticeable negative effects on the performance of the system?
Comment 5 Pacho Ramos gentoo-dev 2008-03-10 21:03:14 UTC
ck-sources were dropped from portage, maybe this bug should be closed
Comment 6 Micheal Marineau (RETIRED) gentoo-dev 2008-03-10 21:12:58 UTC
Oops, yeah, didn't clear this out. Closing.