Bug 26858

Summary: [headless] no glxgears output if disconnecting monitor before starting X
Product: DRI Reporter: fangxun <xunx.fang>
Component: DRM/IntelAssignee: Jesse Barnes <jbarnes>
Status: CLOSED FIXED QA Contact:
Severity: normal    
Priority: medium CC: yakui.zhao
Version: unspecifiedKeywords: NEEDINFO
Hardware: All   
OS: Linux (All)   
i915 platform: i915 features:
Description Flags
Xorg log
glxgears window is blank sceen if disconnect monitor before staring X
dmesg file none

Description fangxun 2010-03-03 05:09:05 UTC
Created attachment 33719 [details]
Xorg log

System Environment:
Platform:        ALL
Mesa:           (master)abcb6b6d01c253627363a05205291630b5247018
Xserver:           (master)a34812b09000db2ff2a1dc6182602839123edd4e
Xf86_video_intel:       (master)c2c670ef18755cf5c878edf8a6b7d1617f54fe73
Libdrm:         (master)3130f94c6ee32668cb9f0b96b6c8e308a7bb3b11
Kernel:  (master)724e6d3fe8003c3f60bf404bf22e4e331327c596

Bug detailed description:
With bug#14611 fixed and enable VGA output by kernel option, we can start X without monitor connected. But there also have problem as following described:
Start machine with monitor attached. After kernel booting, disconnect monitor and then start X. Running glxgears, we find the running status is wrong. Connecting monitor again, we can see the running 3D window is blank screen. If start X first and then disconnect monitor, glxgears works well.

There is another condtions: Start machine without monitor attached. After kernel booting, then start X, glxgears also works fine. 

Reproduce steps:
1.enable VGA output with kernel option in the grub: video=VGA-1:e
2.reboot machine with monitor connected
3.disconnect monitor before starting X
4.start X
5.run glxgears
Comment 1 fangxun 2010-03-03 05:19:03 UTC
Created attachment 33721 [details]
glxgears window is blank sceen if disconnect monitor before staring X
Comment 2 Gordon Jin 2010-03-03 18:18:48 UTC
the symptom is glxgears doesn't print info like fps, and shows blank if we re-connect the monitor.
Comment 3 fangxun 2010-03-03 18:31:53 UTC
Created attachment 33741 [details]
dmesg file
Comment 4 Jesse Barnes 2010-03-04 08:06:09 UTC
I think this is caused by the glxgears swap waiting for an event that will never occur.  I need to add better error handling for that case.
Comment 5 Jesse Barnes 2010-03-04 12:52:28 UTC
Can you try this patch?

Comment 6 fangxun 2010-03-05 00:13:36 UTC
With this patch, it still fails on G33. But I find it works well on G45 now without this patch. I will make further test on other machines. 
Comment 7 Jesse Barnes 2010-04-06 11:42:49 UTC
Does this still happen with the latest bits?
Comment 8 fangxun 2010-04-09 04:41:59 UTC
Tested on G45 and G33, it works fine.
Comment 9 Jesse Barnes 2010-04-09 10:23:10 UTC
Thanks for the update.
Comment 10 Elizabeth 2017-10-06 14:54:13 UTC
Closing old verified.

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.