Bug 16957 - [855GM] X hangs on startup in i830_crt_detect(), with patch "force-enables pipe A"
Summary: [855GM] X hangs on startup in i830_crt_detect(), with patch "force-enables pi...
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/intel (show other bugs)
Version: 7.3 (2007.09)
Hardware: x86 (IA32) Linux (All)
: medium normal
Assignee: Jesse Barnes
QA Contact: Xorg Project Team
Keywords: NEEDINFO
Depends on:
Reported: 2008-08-01 21:37 UTC by Andrew Moise
Modified: 2009-03-08 22:56 UTC (History)
0 users

See Also:
i915 platform:
i915 features:

Xorg.0.log (22.66 KB, text/plain)
2008-08-01 21:38 UTC, Andrew Moise
no flags Details
xorg.conf (4.00 KB, text/plain)
2008-08-01 21:39 UTC, Andrew Moise
no flags Details

Description Andrew Moise 2008-08-01 21:37:14 UTC
I'm running a small-form-factor PC with an 855GM chipset, and X hangs during startup leaving me with a blank screen on my VGA output.  This happens in 2.4.0 from git, in the current git head (commit 27e9506fda86e90fd67de1715fa32d23aaa8a683), and in 2.3.2-2+lenny1 from Debian sid.  It does _not_ happen in 2.3.2-2+lenny2, and the only difference between those two is that 2.3.2-2+lenny1 includes a cherry-picked patch from 2.4.0 that force-enables pipe A on 855GM, and 2.3.2-2+lenny2 doesn't.

This is the backtrace I get from gdb when attaching to the hung X process (using the git head version of the intel driver):

0xb7b0a5da in i830_crt_detect (output=0x9db1818) at i830_crt.c:285
285             while ((dsl = INREG(pipe_dsl_reg)) <= vsample)
(gdb) bt
#0  0xb7b0a5da in i830_crt_detect (output=0x9db1818) at i830_crt.c:285
#1  0x080f64b0 in xf86ProbeOutputModes (scrn=0x9daf0e0, maxX=2048, maxY=2048)
    at ../../../../hw/xfree86/modes/xf86Crtc.c:1275
#2  0x080f6e24 in xf86InitialConfiguration (scrn=0x9daf0e0, canGrow=0)
    at ../../../../hw/xfree86/modes/xf86Crtc.c:1577
#3  0xb7b15d10 in I830PreInit (pScrn=0x9daf0e0, flags=<value optimized out>)
    at i830_driver.c:1645
#4  0x080ab42f in InitOutput (pScreenInfo=0x8210bc0, argc=3, argv=0xbf9a6f84)
    at ../../../../hw/xfree86/common/xf86Init.c:548
#5  0x08074591 in main (argc=3, argv=0xbf9a6f84, envp=0xbf9a6f94)
    at ../../dix/main.c:369

I'm running the core server version 1.4.2-2 from Debian sid.  I'll attach my config and log.

Comment 1 Andrew Moise 2008-08-01 21:38:48 UTC
Created attachment 18072 [details]
Comment 2 Andrew Moise 2008-08-01 21:39:12 UTC
Created attachment 18073 [details]
Comment 3 Andrew Moise 2008-08-01 21:44:57 UTC
There's also a separate bug in Debian's bug tracker describing this problem on a laptop: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=493096
Comment 4 Gordon Jin 2008-08-01 23:29:49 UTC
reassign to Jesse.
Comment 5 Jesse Barnes 2008-08-06 14:32:43 UTC
Can you see what vsample value it's waiting for at that point?  It looks like the current logic is tight in that it can result in a border size of 1, but it should eventually work...

In the meantime I'll try hooking a monitor to my 855 laptop and seeing what happens.
Comment 6 Jesse Barnes 2008-08-06 14:59:15 UTC
I can't reproduce on my 855 laptop...  can you enable the modedebug option and attach a new log?
Comment 7 Michael Fu 2008-09-25 01:48:19 UTC
ping bug reporter...
Comment 8 Andrew Moise 2008-09-27 17:17:26 UTC
Sadly, I don't have time to respond to my xorg bugs with anything like reasonable speed anymore.  See my comments in bug #11368 for more.
Comment 9 Andrew Moise 2008-11-19 22:03:40 UTC
Hm, this doesn't seem to happen in 2.4.2-1 from Debian experimental.  I'm fine with assuming it got fixed since 2.4.0.

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.