Bug 3715

Summary: Kernel panics after loading i915 module
Product: DRI Reporter: Daniel Stone <daniel>
Component: DRM/otherAssignee: Default DRI bug account <dri-devel>
Status: RESOLVED WORKSFORME QA Contact:
Severity: critical    
Priority: high    
Version: XOrg git   
Hardware: Other   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description FreeDesktop Bugzilla Database Corruption Fix User 2005-07-06 10:36:03 UTC
Until now I have used the snaphot i915-20050509-linux.i386.tar.bz2 
from http://dri.freedesktop.org/snapshots/ and it works. 
Now I tried the newest snapshot (i915-20050628-linux.i386.tar.bz2) with the 
same kernel, but with next boot the kernel panics during loading the i915.ko 
module (sorry, the boot stops, so I cannot provide the oops) 
So I had to remove the module to be able to boot. 
I tried again with a booted system (to provide the oops), the modul was loaded, 
but after trying to unload the module rmmod hangs forever. So something is 
really wrong here. 
 
The running kernel is: 2.6.11-gentoo-r9 
The system is a notebook Dell Latitude X1, with a 1.1GHz ULV Pentium-M 733, 
916GMS chipset running Gentoo (xorg 6.8.2-r1) 
 
Do you need further information? 
Regards 
Frank
Comment 1 Alan Hourihane 2005-07-06 11:10:59 UTC
you might want to try checking out the CVS as I can't replicate it there.
Comment 2 FreeDesktop Bugzilla Database Corruption Fix User 2005-07-06 12:50:56 UTC
I was able to catch the oops output, so you are able to see where is: 
 
[drm] Initialized drm 1.0.0 20040925 
PCI: Unable to reserve mem region #3:10000000@c0000000 for device 0000:00:02.0 
Unable to handle kernel NULL pointer dereference at virtual address 000006f8 
 printing eip: 
f8da7ba5 
*pde = 00000000 
Oops: 0000 [#1] 
PREEMPT 
Modules linked in: i915 drm thermal processor button intel_agp agpgart ipw2200 
firmware_class ieee80211 ieee80211_crypt 
CPU:    0 
EIP:    0060:[<f8da7ba5>]    Not tainted VLI 
EFLAGS: 00010282   (2.6.11-gentoo-r9) 
EIP is at i915_driver_irq_handler+0x15/0xb0 [i915] 
eax: 00000000   ebx: f7f7b800   ecx: 00000000   edx: f8daa240 
esi: 00000000   edi: c1b6f800   ebp: f7f7bf14   esp: f7bccf34 
ds: 007b   es: 007b   ss: 0068 
Process modprobe (pid: 5296, threadinfo=f7bcc000 task=f7bf6ac0) 
Stack: 00000728 000000d0 f7f7b800 00000000 f7f7b800 00000000 f8dbc473 f7f7b800 
       00000000 f8daa1ec f8daa240 f8daa1ec c1b6f800 f8daa160 f8daa240 f8db87a5 
       c1b6f800 f8daa1ec f8daa240 ffffffff 00000000 f7bcc000 f8daa480 00000001 
Call Trace: 
 [<f8dbc473>] drm_get_dev+0xe3/0x160 [drm] 
 [<f8db87a5>] drm_init+0xf5/0x180 [drm] 
 [<f8ccc022>] i915_init+0x22/0x26 [i915] 
 [<c0133463>] sys_init_module+0x173/0x240 
 [<c010318f>] syscall_call+0x7/0xb 
Code: 08 8b 44 24 1c 89 44 24 04 e8 08 09 00 00 eb d0 90 90 90 90 90 90 83 ec 
18 8b 44 24 20 89 5c 24 10 8b 0d 48 42 dc f8 89 74 24 14 <8b> b0 f8 06 00 00 8b 
46 04 8b 40 10 0f b7 80 a4 20 00 00 89 c3 
 
Comment 3 Dave Airlie 2005-07-06 13:33:12 UTC
do you have vesafb or intelfb running?
Comment 4 FreeDesktop Bugzilla Database Corruption Fix User 2005-07-06 14:13:09 UTC
(In reply to comment #3) 
> do you have vesafb or intelfb running? 
vesafb. 
The oops happens only with the new snapshot, although I don't find big changes 
in the code. I compared the i915 driver files and there is only added something 
regarding AGP (may be this is related - the 915GMS uses PCIexpress?) and some 
lines for suspend. 
 
Comment 5 Alan Hourihane 2005-07-06 14:24:07 UTC
Are you sure you are using the drm.ko from the snapshot package too and not the
one from your 2.6.9 kernel ?
Comment 6 Dave Airlie 2005-07-06 15:43:25 UTC
It's impossible to use the kernel drm.ko the second module won't load.. I've
tested it .. you get different symbol size issues...

Try without vesafb would be my first guess...
Comment 7 Alan Hourihane 2005-07-12 04:26:35 UTC
A new snapshot is up. 20050707 - can you try that ?
Comment 8 FreeDesktop Bugzilla Database Corruption Fix User 2005-07-12 06:07:26 UTC
I tried the new 20050707 snapshot - still the same. 
The install.sh fails with the following (I had that also once with the 0628 
snapshot). The EIP is zero? 
 
Inserting new kernel module "i915"...Oops: 0000 [#1] 
PREEMPT 
Modules linked in: i915 drm snd_bt_sco snd_hwdep snd_mixer_oss snd_intel8x0 
snd_ac97_codec snd_pcm snd_timer snd_page_alloc snd 
michael_mic arc4 ieee80211_crypt_tkip cpufreq_ondemand speedstep_centrino 
freq_table rfcomm hidp l2cap hci_usb bluetooth ehci 
_hcd uhci_hcd usbcore thermal processor button intel_agp agpgart ipw2200 
firmware_class ieee80211 ieee80211_crypt 
CPU:    0 
EIP:    0060:[<00000000>]    Not tainted VLI 
EFLAGS: 00010246   (2.6.11-gentoo-r9) 
EIP is at 0x0 
eax: 00000000   ebx: 00000000   ecx: 00000000   edx: f8f396c0 
esi: f616a000   edi: c1b6f800   ebp: f8f3966c   esp: f598df4c 
ds: 007b   es: 007b   ss: 0068 
Process modprobe (pid: 9872, threadinfo=f598d000 task=f7b2aa80) 
Stack: f8fc4528 f616a000 00000000 f8f3966c f8f396c0 f8f3966c c1b6f800 f8f396c0 
f8f395e0 f8fc0a68 c1b6f800 f8f3966c f8f396c0 ffffffff 00000000 f598d000 
f8f39900 00000001 f598d000 f8de6022 f8f396c0 f8f395e0 c0133463 c04181c8 
Call Trace: 
 [<f8fc4528>] drm_get_dev+0xd8/0x170 [drm] 
 [<f8fc0a68>] drm_init+0xd8/0x180 [drm] 
 [<f8de6022>] i915_init+0x22/0x26 [i915] 
 [<c0133463>] sys_init_module+0x173/0x240 
 [<c010318f>] syscall_call+0x7/0xb 
Code:  Bad EIP value. 
 
Comment 9 Alan Hourihane 2005-07-12 06:35:36 UTC
did you try without vesafb ?
Comment 10 FreeDesktop Bugzilla Database Corruption Fix User 2005-07-21 06:12:07 UTC
Sorry for the delay. 
Without vesafb it doesn't crash. 
Now I'm running Gentoo kernel 2.6.12-r6 and this is also ok. But may be only 
some timing is different, which hides the bug now. 
May be the driver is not able to handle interrupts correctly until the 
initialization is finished? 
Comment 11 FreeDesktop Bugzilla Database Corruption Fix User 2005-07-21 06:55:41 UTC
Again, after noticing that some colors in X looks strange with the 20050707 
snapshot I wnat to try the old one from May, which always worked. 
But now, this one also panics - on the 2.6.12 kernel, again in modprobe, but 
again different. Sometimes it happens, sometimes not. Timing problem? 
 
Here comes the stack: 
Oops: 0000 [#1] 
PREEMPT 
Modules linked in: i915 snd_mixer_oss snd_intel8x0 snd_ac97_codec snd_pcm 
snd_timer snd_page_alloc snd michael_mic arc4 ieee80211_crypt_tkip 
cpufreq_ondemand speedstep_centrino freq_table rfcomm hidp l2cap hci_usb 
bluetooth ehci_hcd uhci_hcd usbcore drm thermal processor button intel_agp 
agpgart ipw2200 firmware_class ieee80211 ieee80211_crypt 
CPU:    0 
EIP:    0060:[<f8d3d06f>]    Not tainted VLI 
EFLAGS: 00010246   (2.6.12-gentoo-r6) 
EIP is at i915_driver_irq_preinstall+0xf/0x40 [i915] 
eax: f7fb0800   ebx: f7fb0800   ecx: fffffffe   edx: 00000000 
esi: 00000000   edi: c1b75800   ebp: f7fb0f14   esp: f5d3df44 
ds: 007b   es: 007b   ss: 0068 
Process modprobe (pid: 10733, threadinfo=f5d3c000 task=f7a59a80) 
Stack: f8d58472 f7fb0800 00000000 f8d3f1ec f8d3f240 f8d3f1ec c1b75800 f8d3f160 
       f8d3f240 f8d547a5 c1b75800 f8d3f1ec f8d3f240 ffffffff 00000000 f8d3f480 
       f5d3c000 00000001 f5d3c000 f8d62022 f8d3f240 f8d3f160 c01350ea c040da88 
Call Trace: 
 [<f8d58472>] drm_get_dev+0xe2/0x160 [drm] 
 [<f8d547a5>] drm_init+0xf5/0x180 [drm] 
 [<f8d62022>] i915_init+0x22/0x26 [i915] 
 [<c01350ea>] sys_init_module+0x14a/0x200 
 [<c01031d5>] syscall_call+0x7/0xb 
Code: d3 f8 b9 43 da d3 f8 89 54 24 04 89 4c 24 08 e8 78 c0 
 3d c7 ba ea ff ff ff eb d4 90 8b 44 24 04 b9 fe ff ff ff 8b 
 90 f8 06 00 00 <8b> 42 04 8b 40 10 66 89 88 98 20 00 00 8b 
 42 04 31 c9 8b 40 10 
		    
 
Comment 12 Alan Hourihane 2005-10-27 09:35:19 UTC
This is one of those bugs that got squished by the bugzilla corruption.

There is no reporter anymore.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.