Created attachment 23113 [details] [review]
Reproducible on at least Thinkpad T400, T500 (both GM45).
After resuming from S3, the machine locks after switching back to the VT the X server is running on, *unless*
- the kernel contains commit 881ee9889c8b98671c5491e43666bf5d4f78a180 (2.6.18 and later)
- i915.ko is loaded
The problem is that the driver touches MCHBAR_RENDER_STANDBY only on server start-up and relies on i915.ko to save and restore that register on suspend/resume instead. This means that for all people running either older kernels or not using drm at all, the system will inevitably lock up.
The attached patch also disables standby on EnterVT which happens after resume, fixing this problem -- perhaps it might be suitable for inclusion.
sorry typo, kernel version above should read "2.6.28 and later"
Looks good, and I removed the call from the old location since entervt happens in that path as well.
In the future, attaching the output of git-format-patch HEAD~1 is nice as it gets your name, address, and commit message along with the diff in an easy-to-apply format. :)
Author: Helge Bahmann <email@example.com>
Date: Sat Feb 21 10:10:04 2009 -0800
Move disable_render_standby to EnterVT instead of startup.
Otherwise, with a pre-2.6.28 older kernel the disable would be lost at
resume time and cause hangs.
*** Bug 17807 has been marked as a duplicate of this bug. ***