Summary: | [GM965 KMS] “acid mode” when resuming | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product: | DRI | Reporter: | Yves-Alexis <corsac> | ||||||||||||||
Component: | DRM/Intel | Assignee: | Jesse Barnes <jbarnes> | ||||||||||||||
Status: | CLOSED FIXED | QA Contact: | Xorg Project Team <xorg-team> | ||||||||||||||
Severity: | normal | ||||||||||||||||
Priority: | medium | ||||||||||||||||
Version: | unspecified | ||||||||||||||||
Hardware: | Other | ||||||||||||||||
OS: | All | ||||||||||||||||
Whiteboard: | |||||||||||||||||
i915 platform: | i915 features: | ||||||||||||||||
Attachments: |
|
Description
Yves-Alexis
2009-02-03 14:21:44 UTC
Created attachment 22546 [details]
Registers dump before suspend
Created attachment 22547 [details]
Registers dump after resume
Forgot to say that, after resume, X is stuck with rainbow colors, but the box is reachable via ssh. lspci -vv says: 00:02.0 VGA compatible controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 0c) (prog-if 00 [VGA controller]) Subsystem: Lenovo T61 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 29 Region 0: Memory at f8100000 (64-bit, non-prefetchable) [size=1M] Region 2: Memory at e0000000 (64-bit, prefetchable) [size=256M] Region 4: I/O ports at 1800 [size=8] Capabilities: [90] Message Signalled Interrupts: Mask- 64bit- Queue=0/0 Enable+ Address: fee0100c Data: 4199 Capabilities: [d0] Power Management version 3 Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 PME-Enable- DSel=0 DScale=0 PME- Bridge: PM- B3+ Kernel modules: i915 00:02.1 Display controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 0c) Subsystem: Lenovo T61 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 Region 0: Memory at f8200000 (64-bit, non-prefetchable) [size=1M] Capabilities: [d0] Power Management version 3 Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 PME-Enable- DSel=0 DScale=0 PME- Bridge: PM- B3+ Created attachment 22548 [details]
dmesg after broken resume
Created attachment 22549 [details]
xorg.conf
Created attachment 22550 [details]
X log after broken resume
For the record, same thing happens with Linux from drm-2.6/drm-next. Ho, and I tried without KMS enabled, and it suspends/resumes fine Just in case, same thing happens with -rc4 + drm-2.6/drm-fixes. Created attachment 23050 [details] [review] idle GEM at suspend, set it back up at resume Care to try this one out? It may not cover everything but makes suspend/resume work for me. (In reply to comment #10) > Created an attachment (id=23050) [details] > idle GEM at suspend, set it back up at resume > > Care to try this one out? It may not cover everything but makes suspend/resume > work for me. I tried the patch on the ML (with the irq stuff). With it, the resume still leads to “acid mode” but now the desktop is responsive. I can move the cursor, open apps, stuff like that. I tried restarting X but no luck. I'm trying with: linux-2.6/master + drm-2.6/fixes + your patch xserver 1.5.99.902 xf86-video-intel master/3012d85cc5eb58c2447e93c05c39dc14feaae988 but with the FENCE stuff reverted because it didn't build with standard kernel headers (I should try to update to HEAD and try to build with custom kernel headers, just in case) drm 2.4.4+git+20090205+8b88036-1 Cheers, Wow, I've tried with xf86-video-intel master (so without reverting my revert) and the colors are correctly reset at resume. The console background color (just before switch to X) is still green, which is weird, but in xorg the colors are fine. So I guess the X drivers finishes the initialization in some way. For the record, the lock at resume is fixed with Jesse Barnes patch “i915: suspend/resume GEM when KMS is active” (not yet commited to kernel) and the “acid mode” is fixed by something in git master of xf86-video-intel. With that, KMS suspend/resume works fine on my T61 I don't know if it's the same bug, but latest 2.6.29-rc7 (559595a) corupts the FB console on suspend to ram and suspend to disk. I don't have X running and the i915 module is builtin in the kernel. The corruption is that the black background color becomes gray, white becomes yellow and red becomes cyan. With suspend2ram this is noticeable after resume, but with suspend2disk it's noticeable a moment before the laptop is shutdown. Hardware is i950gm (Thinkpad X60s). (In reply to comment #14) interesting, the corruption goes away when the console screen blanker shuts down the screen. The corruption is fixed in xf86-video-intel (at least in 2.6.3) I still have some problems at resume. Once over three or four, usually, resume fails, sitting on console with a green or orange background. Keyboard doesn't respond, but if I use the Fn+F12 key to hibernate, it works. When restarting from the suspend to disk, it goes to the “broken” state. I can suspend to ram to, but then at resume screens stays black. kernel is 2.6.29-rc7 and drm is 2.4.5 This one's fixed right? Yeah, thanks, it's fixed |
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.