Red Hat Bugzilla – Bug 186956
Suspend/resume fails on Thinkpad X40 using i810
Last modified: 2013-03-05 22:45:04 EST
Description of problem:
Suspend/resume fails on Thinkpad X40 using i810 integrated graphics device.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Key Alt-F4 to induce suspend.
2. Close and open lid to resume.
xorg's brains get scrambled; symptoms include (but are not limited to) wrong
backgrounds in xterms.
Normal X display resumes properly.
Also, lid close fails to trigger suspend as it should.
The resume problem can be fixed by including "acpi_sleep=s3_bios"
to the kernel options in /etc/grub.conf (thanks to Dax Kelson for this tip).
That doesn't make lid-close do the right thing, though.
Ok, Ive spent some time hacking on this.
Eric is correct, you need the acpi_sleep option for this to come back from sleep.
Although I still get the graphics corruption. See attached screenshot. This is
not reproducable 100% of the time.
It can not be fixed with change between VT's.
It can not be fixed with an init 3, init 5.
It requires a reboot for X11 to return to normal usable mode.
The screenshot itself does not do justice to how the damage works. When you
alt+tab things go back to normal, until you move a widget in which case the
screen "damages" again.
This reminds me of a badly behaving application that doesnt repaint correctly,
although this is not the case in this situation.
Apologies for typos or incorrect sentence structure, I am typing this in the
Created attachment 127219 [details]
Screenshot of corrupted graphics
This is an example of some of the damage, it gets much worse than this.
If you want the lid close to work, I had to do this.
Make the file /etc/acpi/events/lid.conf
In the /etc/acpi/action/sleep.sh file
echo -n 'mem' > /sys/power/state
service acpid restart
Close lid.. should resume assuming you have "acpi_sleep=s3_bios"
to the kernel options in /etc/grub.conf, it should come out.. albeit damaged.
Found that if you remove gnome-power-manager and just let the kernel do its
thing. Behavior seem to go back to normal.
I confirm that removing gnome-power manager fixes the display-trashing problem.
It also fixes an unrelated bug: pulling the plug on the machine sometimes threw
it into sleep mode.
(In reply to comment #6)
> I confirm that removing gnome-power manager fixes the display-trashing problem.
Not sure why g-p-m would have anything to do with the display, but how do you
suspend without using g-p-m?
> pulling the plug on the machine sometimes threw it into sleep mode.
This is fixed in 2.14.2 (hopefully)
Eric, does the display corruption also happen when you use pm-suspend rather
than echo -n 'mem' > /sys/power/state ?
hal uses pm-suspend to do the suspend on fedora, and I think this is the root of
the problem. You may have to comment out the vbetool stuff in /etc/pm/* before
pm-suspend (and thus gnome-power-manager) will work.
gnome-power-manager-2.14.3-1 has been pushed for fc5, which should resolve this issue. If these problems are still present in this version, then please make note of it in this bug report.
Looks like this was fixed in fc5, and no recent activity to contradict this,