On Sat, 21 May 2011 23:55:57 -0500, Matt Mackall mpm@selenic.com wrote:
I've got a new Thinkpad x220 which won't wake up from suspend with 2.6.39, but works fine with 2.6.37.
I bisected it down to this cset:
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=...
drm/i915: make the blitter report buffer modifications to the FBC unit
For now, you should be able to disable FBC:
diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c index c34a8dd..2a82895 100644 --- a/drivers/gpu/drm/i915/i915_drv.c +++ b/drivers/gpu/drm/i915/i915_drv.c @@ -183,7 +183,7 @@ static const struct intel_device_info intel_sandybridge_d_info = { static const struct intel_device_info intel_sandybridge_m_info = { .gen = 6, .is_mobile = 1, .need_gfx_hws = 1, .has_hotplug = 1, - .has_fbc = 1, + .has_fbc = 0, .has_bsd_ring = 1, .has_blt_ring = 1, };
Let us know if this works. There's a patch heading for 2.6.40 that provides a module parameter to control FBC from the kernel command line. We've got a couple X220s on order and I hope we'll be able to reproduce (and fix) this issue -- FBC saves enough power that we'd like to be able to leave it enabled on hardware that supports it.