[regression] Corrupted screen and sluggish performance after suspend with 295.40 drivers
On Ubuntu 12.04 beta2 with the 295.33-0ubuntu1 driver, I could suspend the system and resume it just fine. The graphics system came back up and I could continue working.
With the new 295.40-0ubuntu1 driver package, if I suspend the system and resume it, the lock screen asks for my password. Once I give it that, the lock screen goes away and the screen fills with garbage. I can interact with the open programs as if everything is fine, but instead of window contents all I see is junk moving around the screen. After about 15 seconds of this, the display becomes extremely slow to respond. I can get the display back to a usable state if I hop out to the Alt-F1 shell, restart lightdm, and log in again.
This seems to happen with both Unity 3d and GNOME3 shell. It does _not_ happen with Unity 2d. This makes me suspect something related to GL textures.
Updating the system to the latest software (as of 16 April 2012) doesn't fix anything, but reverting to the 295.33-0ubuntu1 package makes the suspend/resume cycle work again. I also built a new 3.3.2 kernel to see if that might fix it, but it does not.
When the screen gets garbled and the display becomes really slow, I see a whole lot of this in dmesg:
NVRM: Xid (0000:01:00): 13, 0002 beef3097 00004097 00001fd8 00000001 00000020
NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Also, .xsession-errors shows a whole lot of these:
compiz (decor) - Warn: failed to bind pixmap to texture