Bug 441334

Summary: Intel video 855GM and compiz give black windows after resume
Product: [Fedora] Fedora Reporter: Peter Janakiev <malwkgad>
Component: xorg-x11-drv-i810Assignee: Adam Jackson <ajax>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: low    
Version: 8CC: mcepl, mihel, splitsch, xgl-maint
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: F9 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-05-23 17:20:17 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
My xorg conf file
none
Xorg.0.log file
none
Xorg.0.log
none
openarena log
none
full backtrace none

Description Peter Janakiev 2008-04-07 16:18:38 UTC
Description of problem:
I have two laptops - work and home use. They are different manufactors but the
video card seem to be the same - Intel 855GM VGA controller.
The problem is on my home laptop I cannot use compiz AND suspend because after I
resume I only see a black display and only the pointer is visible - if I somehow
manage to stop compiz without seeing a thing and metacity starts I can use the
laptop and suspend/hibernate/resume multiple times (before I crash the X with
some really big (>1280) video. On the other hand i can suspend - resume multiple
times WITH compiz enabled on the almost the same machine at work (same CPU, same
other hardware, just different brand) without any quirks for hal or any
additional settings - it just works. So I face difficulties trace the problem,
it appear to be software as the hardware is identical.


Version-Release number of selected component (if applicable):
xorg-x11-drv-i810-2.1.1-7.fc8
compiz-0.6.2-3.fc8



How reproducible:
Always, tried almost every possible quirk as found in the HAL quirks site. The
can only get as far as the display being obscured but silhouettes of the windows
are visible. 


Steps to Reproduce:
1. Start a session (gnome default)
2. Enable the desktop effects
3. suspend (pm-suspend or pm-hibernate) and then resume
  
Actual results:
Black display with only mouse pointer visible or darkened windows 

Expected results:
Normal resume of operation

Additional info:
As mentioned if I manage to turn off compiz after the resume it is evident that
the session was not corrupted. More over, if I suspend without compiz and resume
it works fine and after that if I enable compiz I get the same black display.
Turn off compiz again and the display is visible. The DRI/DRM is working fine as
I can start glxgears and it is rendering okay, the glxinfo gives direct
rendering okay. 

pci info:
00:02.0 VGA compatible controller: Intel Corporation 82852/855GM Integrated
Graphics Device (rev 02) (prog-if 00 [VGA controller])
        Subsystem: Mitac Unknown device 8081
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort-
<MAbort- >SERR- <PERR- INTx-
        Latency: 0
        Interrupt: pin A routed to IRQ 10
        Region 0: Memory at b0000000 (32-bit, prefetchable) [size=128M]
        Region 1: Memory at f0000000 (32-bit, non-prefetchable) [size=512K]
        Region 2: I/O ports at e000 [size=8]
        Capabilities: [d0] Power Management version 1
                Flags: PMEClk- DSI+ D1+ D2- AuxCurrent=0mA
PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-
        Kernel modules: intelfb

00:02.1 Display controller: Intel Corporation 82852/855GM Integrated Graphics
Device (rev 02)
        Subsystem: Mitac Unknown device 8081
        Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort-
<MAbort- >SERR- <PERR- INTx-
        Region 0: Memory at 30000000 (32-bit, prefetchable) [disabled] [size=128M]
        Region 1: Memory at 38000000 (32-bit, non-prefetchable) [disabled]
[size=512K]
        Capabilities: [d0] Power Management version 1
                Flags: PMEClk- DSI+ D1+ D2- AuxCurrent=0mA
PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

dmesg does not indicate anything about dri or vga stuff.
xorg.conf is attached but same result ca  be monitored if we remove the file and
start the X without a configuration file. 

I dont know what else can be useful as information. I can provide more info on
request if needed.

Comment 1 Peter Janakiev 2008-04-07 16:18:39 UTC
Created attachment 301537 [details]
My xorg conf file

Comment 2 Matěj Cepl 2008-04-08 13:35:34 UTC
Can we get /var/log/Xorg.0.log as well, please?

Thank you

Comment 3 Peter Janakiev 2008-04-08 16:14:58 UTC
Created attachment 301654 [details]
Xorg.0.log file

Comment 4 Peter Janakiev 2008-04-08 16:16:26 UTC
I also found the difference between the two cards:
00:02.0 VGA compatible controller: Intel Corporation 82852/855GM Integrated
Graphics Device (rev 02) (prog-if 00 [VGA controller])
        Subsystem: Mitac Unknown device 8089
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort-
<MAbort- >SERR- <PERR- INTx+
        Latency: 0
        Interrupt: pin A routed to IRQ 10
        Region 0: Memory at b0000000 (32-bit, prefetchable) [size=128M]
        Region 1: Memory at f0000000 (32-bit, non-prefetchable) [size=512K]
        Region 2: I/O ports at e000 [size=8]
        Capabilities: [d0] Power Management version 1
                Flags: PMEClk- DSI+ D1+ D2- AuxCurrent=0mA
PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-
        Kernel modules: intelfb

00:02.1 Display controller: Intel Corporation 82852/855GM Integrated Graphics
Device (rev 02)
        Subsystem: Mitac Unknown device 8089
        Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort-
<MAbort- >SERR- <PERR- INTx-
        Region 0: Memory at 20000000 (32-bit, prefetchable) [disabled] [size=128M]
        Region 1: Memory at 28000000 (32-bit, non-prefetchable) [disabled]
[size=512K]
        Capabilities: [d0] Power Management version 1
                Flags: PMEClk- DSI+ D1+ D2- AuxCurrent=0mA
PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

They differ in revision. I dont know what it means, sorry:)

Comment 5 Peter Janakiev 2008-04-23 18:12:49 UTC
I didnt gave up, further testing reveals:

If I use intel in Driver in xorg.conf it always gives either absolutely black
screen with cursor visible only or almost black windows (more rarely) 
If I use i810 resume after hibernate works perfectly, compiz still works after
that, the problem is with suspend - it does not work at all with any quirk, the
LCD display always stays black no light at all, while with intel it lights up at
least.
i810 also does not support xrandr I am using for the big monitor and movies
sometimes, which makes it not so perfect solution.

Any updates/more logs needed?

Thanks

Comment 6 Peter Janakiev 2008-04-26 18:07:55 UTC
More update:
I think now that this is caused by how compiz initialize this:
I used the metacity from the svn repo as I read that it now has the compositing
enabled again, so i compile it and stared it and it works with hibernate/resume,
so the black display is actually caused only if I am using compiz, not if I use
3d/gl composition manager like metacity for example. 

I hope this helps further. 

Comment 7 Oleg Mikheev 2008-05-19 19:32:56 UTC
Hi!
I also have the same problem, and I can assure you that it is not a compiz problem.

My system is Averatec 1020 laptop with Intel 855GM video, which worked perfectly
with i810 Xorg driver in Fedora 8. Then I installed Fedora 9...

At first I also thought it was compiz, and I turned it off.
Then everything started to work just fine, suspend/resume worked great with
metacity.
Until I tried to run Mplayer. Running Mplayer froze the system.
I rebooted and ran Mplayer again - it worked just great.
Then I suspended/resumed, tried to run Mplayer - and yes! it hanged again!

Then I experimented with Openarena - exactly the same behavior!
If I run it on a freshly booted system it run great, but if the system was
suspended just once running Openarena will hang the system!

So this issue is caused by ANY program trying to use (3d?) video acceleration.
Which would mean that it is an Xorg issue, most probably the new intel driver.

What do you think?

Comment 8 Oleg Mikheev 2008-05-19 19:48:29 UTC
Created attachment 306004 [details]
Xorg.0.log

Comment 9 Oleg Mikheev 2008-05-19 19:52:50 UTC
00:02.0 VGA compatible controller: Intel Corporation 82852/855GM Integrated
Graphics Device (rev 02) (prog-if 00 [VGA controller])
	Subsystem: TWINHEAD INTERNATIONAL Corp Unknown device 0319
	Flags: fast devsel, IRQ 16
	Memory at f0000000 (32-bit, prefetchable) [size=128M]
	Memory at feb80000 (32-bit, non-prefetchable) [size=512K]
	I/O ports at ec00 [size=8]
	Capabilities: [d0] Power Management version 1

00:02.1 Display controller: Intel Corporation 82852/855GM Integrated Graphics
Device (rev 02)
	Subsystem: TWINHEAD INTERNATIONAL Corp Unknown device 0319
	Flags: fast devsel
	Memory at e8000000 (32-bit, prefetchable) [size=128M]
	Memory at fea80000 (32-bit, non-prefetchable) [size=512K]
	Capabilities: [d0] Power Management version 1


Comment 10 Yan Hals 2008-05-19 19:54:38 UTC
Hello !
I have the same issue
(see: https://bugzilla.redhat.com/show_bug.cgi?id=446614 )
It is not linked to compiz, since the bug appears to me, and I don't use any
desktop effects !

I have a thinkpad r50e laptop, with a intel i855GM video card, and the intel driver.

I sometimes have a black screen, sometimes the cursor appears, sometimes it
works ok... really weird !

Bye

Comment 11 Yan Hals 2008-05-19 20:31:57 UTC
*** Bug 446614 has been marked as a duplicate of this bug. ***

Comment 12 Oleg Mikheev 2008-05-19 20:37:40 UTC
Ok, here is somemore input from my side.
I connected a frozen system via ssh and here are the two last lines in dmesg:

[drm:i915_wait_irq] *ERROR* EBUSY -- rec: 33625 emitted: 33626
[drm:i915_wait_irq] *ERROR* EBUSY -- rec: 0 emitted: 33627

All that happened after I:
1. booted the laptop
2. started Openarena which ran fine
3. exited Openarena
4. suspended and resumed the laptop
5. tried to start Openarena which failed, but system didn't freeze although
screen resolution changed to 640x480
6. Ctrl-Alt-F1, init 3, init 5
7. Xorg restarted fine
8. ran Openarena, this time it froze the display, keyboard and mouse, but still
I could connect with ssh

I think that the first dmesg line was from my first failed Openarena attempt,
and the second one is from the second attempt
I will also attach the Openarena output that may contain useful info too.

Comment 13 Oleg Mikheev 2008-05-19 20:39:38 UTC
Created attachment 306012 [details]
openarena log

the last line is clearly related to the lines from the dmesg posted above

Comment 14 Oleg Mikheev 2008-05-22 19:45:16 UTC
This is the GDB debug output (attached to Xorg):

Program received signal SIGSEGV, Segmentation fault.
DRILock (pScreen=0x82762d8, flags=0) at dri.c:2181
2181        if (!*pDRIPriv->pLockRefCount) {


Comment 15 Oleg Mikheev 2008-05-22 20:15:17 UTC
Created attachment 306419 [details]
full backtrace

Full backtrace

Comment 16 Oleg Mikheev 2008-05-23 08:26:03 UTC
I noticed that the original bug was about i810 on Fedora 8.
Could the author test whether it gets reproduced on Fedora 9, or should I create
a separate bug?

Comment 17 Yan Hals 2008-05-23 09:04:30 UTC
Hello!
A bug about intel driver on fedora 9 was filled here:
https://bugzilla.redhat.com/show_bug.cgi?id=446614
But the symptoms are exactly the same.

I now use ubuntu, and here is what I did:
[quote]
I tweaked /usr/share/acpi-support/IBM.config:

       # R50e
       1834*|1842*|2670*)
               ACPI_SLEEP=true;
               SAVE_VIDEO_PCI_STATE=true;
               ###### toggled this two vars from false -> true
               SAVE_VBE_STATE=true;
               POST_VIDEO=true;
       ;;

I have a 1834, so if no one complains and it's not an obvious break, can
we separate 1834 to it's own case and set true for SAVE_VBE_STATE and
POST_VIDEO there?. Note that changing /etc/defaults/acpi-support had no
effects for me. IBM.config was always preferred when suspending.
[/quote]

I don't know if it helps (I now use Hardy Heron, and it works flawlessly !)

Comment 18 Yan Hals 2008-05-23 09:05:43 UTC
Note the in launchpad, the bug report tool of Ubuntu, they said that it's
vbetools that is broken, not the i810 or intel driver...

Comment 19 Oleg Mikheev 2008-05-23 09:09:29 UTC
Even if vbetools is broken is should not result in Xorg segmentation fault, right?

Comment 20 Peter Janakiev 2008-05-23 09:30:52 UTC
The author (me) confirms that the originally reported issue can NOT be
reproduced on fedora 9 with the Intel driver. Hibernate/resume works just fine
with effects enabled. 

Comment 21 Yan Hals 2008-05-23 09:35:57 UTC
Hello...
It does?
Okay, it seems that the problem wasn't gone for me...
Anyway, everything is fine ,then, good !

Byebye!

Comment 22 Oleg Mikheev 2008-05-23 13:29:08 UTC
I created a new bug:
https://bugzilla.redhat.com/show_bug.cgi?id=448093

Comment 23 Matěj Cepl 2008-05-23 17:20:17 UTC
OK, considering comment 20, I am closing this as CURRENTRELEASE, and if anybody
objects move to bug 448093.