Desktop freezes when Do starts if quiet mode is not enabled

Bug #1396232 reported by Barry Warsaw
42
This bug affects 10 people
Affects Status Importance Assigned to Milestone
gnome-do (Debian)
Fix Released
Unknown
gnome-do (Ubuntu)
Fix Released
High
Chris Halse Rogers
Utopic
Fix Released
High
Chris Halse Rogers
Vivid
Fix Released
High
Chris Halse Rogers

Bug Description

[Impact]

The desktop appears to freeze when Do starts if quiet mode is not enabled in the preferences. This is due to Do deadlocking while holding an X11 grab.

[Test Case]

*) Install Do
*) Start Do.
*) Your desktop will appear to freeze. Switch to a VT and kill gnome-do in order to regain control of your session.

(If not a clean install, ensure “Hide window on first launch (quiet mode)” is *not* checked).

[Regression Potential]
The fix completely removes the use of GDK threading. As Do already delegates all GTK calls to the main thread this should be safe. I was going to fix LP: #1344386 by removing the threading initialisation, but thought that simply locking around Gtk.Application.Run() was a safer minimal fix. HAH!

The worst case is that Do crashes rather than freezing the desktop, which is pretty much still a win.

Original (extremely detalied!) report:

gnome-do and Xorg/unity/desktop seem to be incompatible on a fresh install of either utopic or vivid. This is either tied to 1080p (1920x1080) or a fresh install of either version. Details as I know them are provided here.

I have a brand new machine which is running 1080p to an HDMI monitor. I installed Ubuntu 15.04 fresh from a usb install (usb-creator run from an existing, working vivid machine). As with all new machines, I go through my "new install" check list:

https://wiki.ubuntu.com/BarryWarsaw

These are slightly out of order, and this problem crops up after doing all the apt-get installs, apt-get update, and apt-get dist-upgrade. After all that, a reboot, and a re-login, the desktop is corrupt and unusable. I see the top menu bar extend from the right but only about 1/8th of the way to the left (the rest is desktop background), the dash only displayes on the lower left about 1/3 of the way up (again, desktop background the rest of the way), and neither the mouse nor the keyboard work at all. I must ssh in to reboot (or hard reboot of course). The system is still operational as the ssh shell works perfectly. The desktop is simply corrupt visually and unresponsive. The login screen after boot seems completely functional though. Mouse works fine as does the keyboard (or I wouldn't be able to log in!).

Some additional data points make this even more interesting.

On a different disk on this very same machine, I installed OS X 10.10.1, and VMware Fusion 7.0.1. Inside Fusion, I installed Vivid from daily live build iso of yesterday (11/24/14), and went through the same steps. I get exactly the same corruption and desktop freeze. I took a snapshot of the disk and then installed Utopic fresh from an iso downloaded via the normal www.ubuntu.com download site. In Utopic, I took a disk snapshot, and then I again went through the same apt-get steps and the desktop is again corrupt and frozen. This leads me to believe that one of the packages in my new machine buildout are to blame.

I should also mention that in Vivid, I installed vmware-tools but in Utopic I did not. No difference (except that with vmware-tools I can set the display to 1920x1080, i.e. the full physical screen, while without vmware-tools, I cannot get full screen resolution from System Settings -> Displays).

Oh, I tried booting each of the previous kernels, with no effect.

So now, I went back to the Utopic snapshot I took right after installing from iso and confirmed that everything works perfectly fine. Desktop is not corrupt and keyboard/mouse are responsive. Through the process of elimination, I would take a disk snapshot, install a few packages, test login, rinse and repeat. I was able to narrow it down to gnome-do and its dependencies.

Specifically, after installing gnome-do and its dependencies, the desktop was broken as described above. Reverting to the disk snapshot pre-install of gnome-do, confirms that everything works fine. So now, I installed gnome-do and its dependencies, witnessed the corruption and freeze, and then ssh'd in and then did `apt-get purge gnome-do && apt-get autoremove`. gnome-do and its dependencies were removed, I rebooted, logged in and everything was fine again.

I went back to the Vivid disk snapshot, purged gnome-do and autoremoved, and *its* desktop was fixed. Clearly the problem is related to gnome-do in both Utopic and Vivid and/or one of its dependencies. After submitting this bug I will reboot back into Vivid running natively on the hardware, ssh in, purge gnome-do and its dependencies and see what happens. I suspect the desktop will be fixed again.

As if this is not interesting enough, I have two other desktops currently running Vivid, and both have gnome-do installed, *and* both work perfectly well! The big difference here is that both of them have been dist-upgraded to Vivid through existing Utopic releases, and before that, even Trusty. IOW, both machines were running at least Trusty, upgraded to Utopic, upgraded to Vivid, and work perfectly fine. No desktop corruption, no freezes. (One machine has been upgraded successively since at least Precise; both machines are now on the 'devel' channel.)

I'm happy to continue helping with this in any way necessary. Let me know if you need any other information or have anything you want me to test.

I will let you bugtask this to unity and/or gnome-do or some other dependency, as you see fit. Thanks!

ProblemType: Bug
DistroRelease: Ubuntu 15.04
Package: xorg 1:7.7+7ubuntu2
ProcVersionSignature: Ubuntu 3.16.0-25.33-generic 3.16.7
Uname: Linux 3.16.0-25-generic x86_64
.tmp.unity.support.test.0:

ApportVersion: 2.14.7-0ubuntu10
Architecture: amd64
CompizPlugins: No value set for `/apps/compiz-1/general/screen0/options/active_plugins'
CompositorRunning: compiz
CompositorUnredirectDriverBlacklist: '(nouveau|Intel).*Mesa 8.0'
CompositorUnredirectFSW: true
CurrentDesktop: Unity
Date: Tue Nov 25 10:59:11 2014
DistUpgraded: Fresh install
DistroCodename: vivid
DistroVariant: ubuntu
EcryptfsInUse: Yes
ExtraDebuggingInterest: Yes, including running git bisection searches
GpuHangFrequency: Continuously
GpuHangReproducibility: Yes, I can easily reproduce it
GpuHangStarted: Today
GraphicsCard:
 VMware SVGA II Adapter [15ad:0405] (prog-if 00 [VGA controller])
   Subsystem: VMware SVGA II Adapter [15ad:0405]
InstallationDate: Installed on 2014-11-22 (3 days ago)
InstallationMedia: Ubuntu 15.04 "Vivid Vervet" - Alpha amd64 (20141120)
Lsusb:
 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
 Bus 002 Device 004: ID 0e0f:0008 VMware, Inc.
 Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub
 Bus 002 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse
 Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
MachineType: VMware, Inc. VMware Virtual Platform
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.16.0-25-generic root=UUID=9d28685f-2eae-4d72-8bdc-73fd28aba577 ro
SourcePackage: xorg
Symptom: display
Title: Xorg freeze
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 05/20/2014
dmi.bios.vendor: Phoenix Technologies LTD
dmi.bios.version: 6.00
dmi.board.name: 440BX Desktop Reference Platform
dmi.board.vendor: Intel Corporation
dmi.board.version: None
dmi.chassis.asset.tag: No Asset Tag
dmi.chassis.type: 1
dmi.chassis.vendor: No Enclosure
dmi.chassis.version: N/A
dmi.modalias: dmi:bvnPhoenixTechnologiesLTD:bvr6.00:bd05/20/2014:svnVMware,Inc.:pnVMwareVirtualPlatform:pvrNone:rvnIntelCorporation:rn440BXDesktopReferencePlatform:rvrNone:cvnNoEnclosure:ct1:cvrN/A:
dmi.product.name: VMware Virtual Platform
dmi.product.version: None
dmi.sys.vendor: VMware, Inc.
version.compiz: compiz 1:0.9.12.0+15.04.20141120-0ubuntu1
version.ia32-libs: ia32-libs N/A
version.libdrm2: libdrm2 2.4.58-2
version.libgl1-mesa-dri: libgl1-mesa-dri 10.3.2-0ubuntu1
version.libgl1-mesa-dri-experimental: libgl1-mesa-dri-experimental N/A
version.libgl1-mesa-glx: libgl1-mesa-glx 10.3.2-0ubuntu1
version.xserver-xorg-core: xserver-xorg-core 2:1.16.1.901-1ubuntu1
version.xserver-xorg-input-evdev: xserver-xorg-input-evdev 1:2.9.0-1ubuntu2
version.xserver-xorg-video-ati: xserver-xorg-video-ati 1:7.4.0-2ubuntu2
version.xserver-xorg-video-intel: xserver-xorg-video-intel 2:2.99.914-1~exp1ubuntu6
version.xserver-xorg-video-nouveau: xserver-xorg-video-nouveau 1:1.0.11-1ubuntu2
xserver.bootTime: Tue Nov 25 10:49:00 2014
xserver.configfile: default
xserver.devices:
 input Power Button KEYBOARD, id 6
 input VMware VMware Virtual USB Mouse MOUSE, id 7
 input AT Translated Set 2 keyboard KEYBOARD, id 8
 input ImPS/2 Generic Wheel Mouse MOUSE, id 9
xserver.errors:
 No surface to present from.
 No surface to present from.
xserver.logfile: /var/log/Xorg.0.log
xserver.outputs: Output Virtual2 Virtual3 Virtual4 Virtual5 Virtual6 Virtual7 Virtual8
xserver.version: 2:1.16.1.901-1ubuntu1
xserver.video_driver: vmware

Revision history for this message
Barry Warsaw (barry) wrote :
Revision history for this message
Chris Halse Rogers (raof) wrote :

Urgh. You've run into https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=767280 which *should* be fixed in Vivid but isn't because 0.95.3-2 hasn't migrated out of proposed for some reason.

Adding utopic task.

Changed in gnome-do (Ubuntu):
status: New → In Progress
importance: Undecided → Critical
assignee: nobody → Chris Halse Rogers (raof)
no longer affects: xorg (Ubuntu)
Changed in gnome-do (Ubuntu Utopic):
status: New → In Progress
assignee: nobody → Chris Halse Rogers (raof)
importance: Undecided → High
Changed in gnome-do (Ubuntu Vivid):
importance: Critical → High
Revision history for this message
Chris Halse Rogers (raof) wrote :

You can work around this bug by having ‘hide window on first launch’ enabled, which is why I didn't notice it in my testing.

Revision history for this message
Barry Warsaw (barry) wrote : Re: [Bug 1396232] Re: Xorg freeze

On Nov 26, 2014, at 12:19 AM, Chris Halse Rogers wrote:

>You can work around this bug by having ‘hide window on first launch’
>enabled, which is why I didn't notice it in my testing.

That explains why my existing desktops don't freeze. Thanks for the help,
that was exactly the problem.

summary: - Xorg freeze
+ Desktop freezes when Do starts if quiet mode is not enabled
description: updated
Changed in gnome-do (Debian):
status: Unknown → Fix Released
Revision history for this message
Brian Murray (brian-murray) wrote : Please test proposed package

Hello Barry, or anyone else affected,

Accepted gnome-do into utopic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/gnome-do/0.95.1-1ubuntu2 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in gnome-do (Ubuntu Utopic):
status: In Progress → Fix Committed
tags: added: verification-needed
Revision history for this message
Gustav Ekner (gustav-ekner) wrote :

Hello!

I have tried out the proposed package, and it solves the bug! Thank you Brian!

tags: added: verification-done
removed: verification-needed
Revision history for this message
FatG (b-x) wrote :

Hello,

I also experience the same bug. I have tried the proposed package and it launches correctly.

Thanks

Karsten (kvileid)
Changed in gnome-do (Ubuntu Utopic):
status: Fix Committed → Fix Released
Revision history for this message
Chris Halse Rogers (raof) wrote : Update Released

The verification of the Stable Release Update for gnome-do has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Revision history for this message
Chris Halse Rogers (raof) wrote :

Should be fixed in gnome-do 0.95.3-2.

Changed in gnome-do (Ubuntu Vivid):
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.