Bug 8536

Summary: i915 BIOS fails when restarting Xserver.
Product: xorg Reporter: Carl Michal <michal>
Component: Driver/intelAssignee: Alan Hourihane <alanh>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: high CC: alexl, mszpak
Version: 6.8.99.901 (6.9 RC1)   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Xorg log on failed startup attempt
none
First startup-successful
none
2nd start-successful
none
3rd start, fails
none
First startup-successful
none
2nd start-successful
none
3rd start, fails
none
first try, successful
none
2nd start successful
none
3rd start fails
none
3rd try fails
none
1st try
none
2nd try
none
3rd try fails
none
Here's my xorg.conf (with dual head disabled right now)
none
Here's my Xorg.0.log upon 3rd-try failure.
none
Here's my lspci output. none

Description Carl Michal 2006-10-06 16:39:43 UTC
Using xf86-video-i810-1.7, I've noticed a couple of problems with dual head. 
I'll file the separately.

After the server quits, it won't start again.  The second time you try, the
error is:

> (EE) I810:(0): unknown reason for exception
> (EE) I810:(0): cannot continue
> (EE) I810:(0): VBE initialization failed.
> 
> Backtrace:
> 0: X(cf86SigHandler+0x88) [0x80c2f38]
> 
> Fatal server error:
> Caught signal 11. Server aborting

the intel-agp module can't be removed from the kernel at this point (although
i915 and drm can be).

It seems a reboot is needed to clear this up.

This is an i915 in a Dell Inspiron.  I'll attach the log from the failed
startup.  There is mesage: Bad V_BIOS checksum that occurs even when all is
well, I presume this comes from using 855resolution to get support for the
laptop native screen resolution (1280x800).
Comment 1 Carl Michal 2006-10-06 16:41:01 UTC
Created attachment 7275 [details]
Xorg log on failed startup attempt

Here's the log from a failed startup attempt following a successful dual-head 
session.
Comment 2 Alan Hourihane 2006-10-08 13:58:00 UTC
Did this work with any previous driver correctly ? If not, check if there's a
BIOS upgrade for your machine.
Comment 3 Alan Hourihane 2006-10-08 14:23:46 UTC
Can you also try a test driver from http://www.fairlite.demon.co.uk/intel.html
Comment 4 Carl Michal 2006-10-10 16:28:09 UTC
There was in fact a new BIOS (MXC051-A04), that I have upgraded to, and the
behaviour seems a little different now.

It starts up fine the first time, starts up fine the second time, but always
fails on the third time.  I'll attach logs from all three.

I tried to use the test driver, but the server complains that it is ABI version
(0), while the server is ABI version (1).
Comment 5 Carl Michal 2006-10-10 16:29:02 UTC
Created attachment 7342 [details]
First startup-successful
Comment 6 Carl Michal 2006-10-10 16:29:24 UTC
Created attachment 7343 [details]
2nd start-successful
Comment 7 Carl Michal 2006-10-10 16:29:48 UTC
Created attachment 7344 [details]
3rd start, fails
Comment 8 Alan Hourihane 2006-10-11 00:39:03 UTC
Use the -ignoreABI switch to the Xserver which will get past the ABI error and
try again.
Comment 9 Alan Hourihane 2006-10-11 08:55:03 UTC
I've also uploaded a new driver which emits some extra debug information for me.

Can you try it, and upload a new log.
Comment 10 Carl Michal 2006-10-11 09:38:07 UTC
Created attachment 7355 [details]
First startup-successful

Similar behaviour with the test driver.  This is the first log with a
successful start.
Comment 11 Carl Michal 2006-10-11 09:38:35 UTC
Created attachment 7356 [details]
2nd start-successful
Comment 12 Carl Michal 2006-10-11 09:38:53 UTC
Created attachment 7357 [details]
3rd start, fails
Comment 13 Carl Michal 2006-10-11 14:52:02 UTC
Created attachment 7364 [details]
first try, successful

Sorry, I seem to have uploaded the wrong logs earlier...
Comment 14 Carl Michal 2006-10-11 14:52:26 UTC
Created attachment 7365 [details]
2nd start successful
Comment 15 Carl Michal 2006-10-11 14:52:45 UTC
Created attachment 7366 [details]
3rd start fails
Comment 16 Alan Hourihane 2006-10-11 15:34:48 UTC
Uploaded another test driver to try for this.
Comment 17 Carl Michal 2006-10-11 18:22:47 UTC
ok, so that's a little different.

Now when it fails on the third try, I get dumped back into the console, but the
console is on the second head.  The server now says:

(EE) I810(0): VBE initialization failed.
TRYING REPOST
(EE) I810(0): unknown reason for exception
(EE) I810(0): cannot continue
(EE) I810(0): unknown reason for exception
(EE) I810(0): cannot continue

Backtrace:
0: X(xf86SigHandler+0x84) [0x80b85e4]
1: [0xffffe420]
2: X(InitOutput+0x9b1) [0x80a0421]
3: X(main+0x276) [0x806e3f6]
4: /lib/libc.so.6(__libc_start_main+0xd8) [0xb7cf7878]
5: X(FontFileCompleteXLFD+0xad) [0x806d931]

and I'll attach the log.
Comment 18 Carl Michal 2006-10-11 18:25:55 UTC
Created attachment 7369 [details]
3rd try fails
Comment 19 Alan Hourihane 2006-10-12 01:14:53 UTC
Did this work correctly in any previous driver ?
Comment 20 Alan Hourihane 2006-10-12 01:29:16 UTC
O.k. I've enabled some quite extensive debug in a new test driver.

Can you try and upload the three logs again ?
Comment 21 Carl Michal 2006-10-12 08:47:17 UTC
Created attachment 7382 [details]
1st try
Comment 22 Carl Michal 2006-10-12 08:47:32 UTC
Created attachment 7383 [details]
2nd try
Comment 23 Carl Michal 2006-10-12 08:48:07 UTC
Created attachment 7384 [details]
3rd try fails
Comment 24 Carl Michal 2006-10-12 08:49:17 UTC
I'm certain I set up dual-head non-xinerama and used it with a previous driver.
 I can't promise that I quit and restarted it 3 times between reboots...
Comment 25 Alan Hourihane 2006-10-12 09:09:50 UTC
Unfortunately this looks like a buggy BIOS. The modesetting branch will remove
the BIOS from the equation and sort this kind of problem out.
Comment 26 Alan Hourihane 2006-10-12 09:17:14 UTC
I've changed the title because intel-agp can never be unloaded. It's been like
this for quite some time regardless of this bug.
Comment 27 Rich Landers 2006-11-09 10:14:47 UTC
I am having this exact problem, including the 3rd-time-only crash, on an Acer
Aspire 3620, dual head setup. I have just installed Fedora Core 6 with the
included Xorg 7.1.1. server.  Everything works fine with a single head setup.
The dual head works fine for the first two restarts, and again after rebooting.
 I too get a warning about a bad VBIOS checksum.

An additional clue, perhaps: after startx, I see a garbled screen until the
server gets going, even on successful starts.


Comment 28 Rich Landers 2006-11-09 10:16:46 UTC
Created attachment 7714 [details]
Here's my xorg.conf (with dual head disabled right now)

Dual head setup on Acer Aspire 3620.
Comment 29 Rich Landers 2006-11-09 10:31:41 UTC
Created attachment 7715 [details]
Here's my Xorg.0.log upon 3rd-try failure.
Comment 30 Rich Landers 2006-11-09 10:32:26 UTC
Created attachment 7716 [details]
Here's my lspci output.
Comment 31 Marcin Zajaczkowski 2006-12-09 03:33:17 UTC
(In reply to comment #17)
> ok, so that's a little different.
> 
> Now when it fails on the third try, I get dumped back into the console, but the
> console is on the second head.  The server now says:
> 
> (EE) I810(0): VBE initialization failed.
> TRYING REPOST
> (EE) I810(0): unknown reason for exception
> (EE) I810(0): cannot continue
> (EE) I810(0): unknown reason for exception
> (EE) I810(0): cannot continue
> 
> Backtrace:
> 0: X(xf86SigHandler+0x84) [0x80b85e4]
> 1: [0xffffe420]
> 2: X(InitOutput+0x9b1) [0x80a0421]
> 3: X(main+0x276) [0x806e3f6]
> 4: /lib/libc.so.6(__libc_start_main+0xd8) [0xb7cf7878]
> 5: X(FontFileCompleteXLFD+0xad) [0x806d931]

I have similar behaviour (and similar stack trace) with Amilo Pro V8010 (Intel
Mobile 915GM Express) with enabled dual head view.

Fedora Core 6, x.org 7.1,
xorg-x11-drv-i810-1.6.5-10.fc6 (also with 1.7.3 compiled by hand).

I can attach configuration and logs.
Comment 32 Alan Hourihane 2007-01-05 08:48:47 UTC
O.k. I've found the cause of this and I'll be committing a fix soon with a new
release of driver.
Comment 33 Alan Hourihane 2007-01-09 06:02:30 UTC
Committed. Closing.

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.