Bug 467318

Summary: Thinkpad X200/cantiga/gm45: crash on resume
Product: [Fedora] Fedora Reporter: Jeremy Fitzhardinge <jeremy>
Component: kernelAssignee: Dave Airlie <airlied>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: andrew.kay, bernie+fedora, bos, karlcz, kernel-maint, sven, ugo.viti
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-11-17 22:50:30 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
Log of X server starting normally. none

Description Jeremy Fitzhardinge 2008-10-16 20:19:42 UTC
Created attachment 320604 [details]
Log of X server starting normally.

Description of problem:
When using the Intel X driver, the system crashes on resume.  The display reappears, but then the system just hangs.

Version-Release number of selected component (if applicable):
kernel-2.6.27-13.fc10.x86_64
xorg-x11-drv-i810-2.4.2-12.fc10.x86_64
libdrm-2.4.0-0.21.fc10.x86_64

How reproducible:
Always

Steps to Reproduce:
1. Start X
2. Suspend machine
3. Resume
  
Actual results:
Display appears, but machine locks up

Expected results:
Proper resume to usable system.

Additional info:
This is the first kernel version in which using the intel driver works at all, so good work there.

I tried getting some output with netconsole, but apparently the e1000e driver wasn't up at that point.

I haven't tried i915.modeset=1

Comment 1 Jeremy Fitzhardinge 2008-10-16 23:27:48 UTC
Crashes on resume from hibernate as well.

i915.modeset=1 seems pretty broken, which I guess is expected.

Comment 2 Jeremy Fitzhardinge 2008-10-17 02:31:51 UTC
If I switch to a text vt before suspending, and then resume, the machine works fine.  When I switch to X, it works normally for several seconds (animated icons, pointer moves, etc) before the machine locks up.

I'll try to see if anything appears on netconsole next time.

Comment 3 Jeremy Fitzhardinge 2008-10-21 21:07:42 UTC
Further observations:

 - nothing appears on netconsole when it crashes
 - switching to a text vt and using pm-suspend will resume properly; when switching to the X vt, there's a fairly good chance it will resume properly without hanging (maybe ~60% of the time it works)

Comment 4 Ugo Viti 2008-10-30 20:03:37 UTC
Hi,

can you try in order:

open a console, become root (su -) and write:

pm-suspend --quirk-s3-bios --quirk-s3-mode

else

pm-suspend --quirk-vbemode-restore

else

pm-suspend --quirk-vbestate-restore

else

pm-suspend --quirk-vbe-post

else

pm-suspend --quirk-dpms-on

let me know.

Best Regards.

Comment 5 Jeremy Fitzhardinge 2008-11-04 00:58:56 UTC
OK, I tried all those.  The first one just hangs immediately on resume, leaving the screen blank and no activity other than the fan blowing.

The rest have the same symptom as nothing at all: X resumes, I see what was on the screen at suspend time, but the machine is completely locked up.

Comment 6 Ugo Viti 2008-11-04 20:50:28 UTC
Hi,

try the following site:

http://people.freedesktop.org/~hughsient/quirk/quirk-suspend-debug.html

Comment 7 Jeremy Fitzhardinge 2008-11-06 21:05:59 UTC
I looked over that, but I don't see anything I haven't already tried.  I think this is pretty clearly a kernel bug at some level, but I don't have any idea how to make more progress on this.

It is, however, a pretty serious blocker for me, as it breaks suspend/resume on my laptop (the only workaround is that hibernate works reliably, albeit painfully slowly).

Comment 8 Need Real Name 2008-11-06 21:51:38 UTC
I saw mention of the same problem on an Ubuntu thread and someone suggested a script in /etc/pm/sleep.d/ that disabled extra CPUs during suspend/resume.

I tried this on my X200 with Intel driver, and set the script to sleep for 60 seconds on resume before reenabling the extra core. I was able to use the X desktop for that 60 seconds, and then it froze up. :-)

Anyway, a workaround for your laptop is to use the "vesa" driver instead of "intel" if you need suspend to work in the short term. Of course, you don't get all the acceleration.

Comment 9 Sven Lankes 2008-11-09 13:21:30 UTC
Jeremy, 

Do you have compiz/desktopeffects enabled? I'm having the same issue but it goes away when I disable desktop effects (this is also on rawhide x86_64 - on a dell m1330).

Comment 10 Bryan O'Sullivan 2008-11-09 16:32:15 UTC
I have the same hardware as Jeremy, and I definitely don't use compositing, but I see the same problem.

Comment 11 Jeremy Fitzhardinge 2008-11-09 18:10:32 UTC
(In reply to comment #9)
> Do you have compiz/desktopeffects enabled? I'm having the same issue but it
> goes away when I disable desktop effects (this is also on rawhide x86_64 - on a
> dell m1330).

No, I'm not using anything like that.

Comment 12 Jeremy Fitzhardinge 2008-11-12 06:08:44 UTC
According to http://bugs.freedesktop.org/show_bug.cgi?id=18049#c10 this patch will fix the problem:  http://lists.freedesktop.org/archives/intel-gfx/2008-November/000508.html

I have not tried it yet.

Comment 13 Dave Airlie 2008-11-12 06:21:13 UTC
it should be included in kernel 2.6.27.5-101 which is building now.

Comment 14 Jeremy Fitzhardinge 2008-11-12 15:24:59 UTC
Thanks, 2.6.27.5-101 resumes properly for me now.

Comment 15 Bernie Innocenti 2008-11-14 21:36:58 UTC
(In reply to comment #14)
> Thanks, 2.6.27.5-101 resumes properly for me now.

2.6.27-5.101 worked once for me, and hung the second time.  My configuration is an X200s with compiz enabled.

Can you confirm it works reliably for you?

Comment 16 Bernie Innocenti 2008-11-14 21:44:06 UTC
Just tried now with 2.6.27.5-101:

 * with no 3D running, I can reliably suspend and resume.

 * If I suspend when glxgears is running, on resume the glxgears window
   remains black until I drag it around.

 * Running compiz makes the system freeze occasionally even without suspend.

Comment 17 Jeremy Fitzhardinge 2008-11-14 23:03:09 UTC
It has been reasonably stable when I don't use 3d (I don't habitually use compiz).

Its much less reliable using 3d.  I ran googleearth for a while (much better performance than last time I tried), but after a while the textures started getting corrupted, then the whole screen, then X crashed, then the machine.

Similarly running a 3D windows game under Wine - worked OK, but it destabilized the machine after a while.

So I think this particular bug is fixed, but there are still general stability issues with 3D.

Comment 18 Dave Airlie 2008-11-17 22:50:30 UTC
resume fixed closing.