A little while ago I warned DO NOT UPGRADE (yet) to Ubuntu 12.04. That advice still holds. Unlike versions 10 and 11, which seemed stable, 12.04 continues to have serious X windows problems.
The subject of this post is different from the compiz error I was talking about before, which caused hard lockup and kernel panic when using multiple monitors. This new bug causes X to freeze due to an Intel Ivy Bridge CPU/GPU issue but the mouse still moves mockingly around the screen. A switch to a terminal session (Ctrl-Alt-F1) shows everything running happily along and still functioning while the X session (Ctrl-Alt-F7) is frozen.
Update: I should have made it more explicit that this is an interesting area to me because it is a dangerous future direction for exploits, as I wrote about before. Expect attackers to direct their attention towards unprotected boundaries of GPU memory/paging.
Killing X from a terminal brings the system back but blows all the X sessions, which can be very ugly and destructive especially to virtual machines. You will lose work but at least at this point you can gracefully restart Ubuntu. Some have suggested killing compiz processes (e.g. compiz-decorater) to unfreeze X without losing work but it doesn’t prevent lockup.
I guess it’s a good thing they call it LTS because it might be a long time before it’s secure enough to upgrade. Alas, here is the sad and disgusting image of a frozen Pangolin.
Yuck. Not what you want to see every day. After numerous crashes and bug reports there seems to be a solution emerging with a new kernel (linux-image-22.214.171.124-generic).
This bug is awaiting verification that the kernel for Precise in -proposed solves the problem (3.2.0-27.43). Please test the kernel and update this bug with the results. If the problem is solved, change the tag ‘verification-needed-precise’ to ‘verification-done-precise’.
If verification is not done by one week from today, this fix will be dropped from the source code, and this bug will be closed.
See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!
That’s one week from July 9th. The documentation you get from their link isn’t complete so here’s a step-by-step that should work on any Ubuntu 12.04 system if you’re experiencing a frozen X and want to help verify a fix.
- Type “uname -a” in a terminal to verify current version. You will see something like this:
- Open Applications -> Ubuntu Software Center -> Edit -> Software Sources -> Updates and add a check in the precise-proposed box. If you want to verify or add it manually, the following line is added to /etc/apt/sources.list
- Block precise-proposed from updating all packages, as suggested by Ubuntu; “create the file /etc/apt/preferences with this content”
- Update apt to recognize the new source
- Install the proposed linux-image-126.96.36.199-generic kernel (38.5MB)
- That’s it! To verify the new kernel, restart the system, open a terminal and type “uname -a” again
- As a finishing step, and to make validation easier, Ubuntu prefers that you enable and allow Apport to help them isolate the bug(s)
Linux systemname 3.2.0-26-generic #41-Ubuntu...
deb http://archive.ubuntu.com/ubuntu/ precise-proposed restricted main multiverse universe
Pin: release a=precise-security
Pin: release a=precise-updates
Pin: release a=precise-proposed
sudo apt-get update
You should see something like the following lines in the update results
Get:60 http://us.archive.ubuntu.com precise-proposed/main amd64 Packages [163 kB]
Get:64 http://us.archive.ubuntu.com precise-proposed/main i386 Packages [164 kB]
sudo apt-get install linux-image-188.8.131.52-generic
Note: if you also have VMware Workstation installed you will have to install the headers
sudo apt-get install linux-headers-184.108.40.206-generic
The good news is that a custom module patch seems no longer to be needed to start VMware Workstation. If you make certain to install headers that match the new kernel, Workstation should be able to reconfigure itself without error.
When apt completes you will see a line like this
Unpacking linux-image-3.2.0-27-generic (from .../linux-image-3.2.0-27-generic_3.2.0-27.43_amd64.deb) ...
Linux systemname 3.2.0-27-generic #43-Ubuntu...
When running proposed it is recommend that you re-enable Apport bug filing to capture and report crashes. In the event that you end up reporting a crash about a proposed package please tag the bug as proposed-pkg so we can distinguish it from other crash reports.
You can enable Apport on a stable system with:
gconftool -s /apps/update-notifier/show_apport_crashes –type bool true