Unity crashes when started in an environment without utouch support
| Affects | Status | Importance | Assigned to | Milestone | |
|---|---|---|---|---|---|
| Unity |
Fix Released
|
High
|
Mirco Müller | ||
| unity (Ubuntu) |
Fix Released
|
High
|
Mirco Müller | ||
Bug Description
We are staging xserver 1.11 for ubuntu 12.04 in xorg-edgers and don't currently have gesture/multitouch support in X, which means utouch does not work. Compiz segfaults when starting unity 100% of the time in this setup (see bt-full.txt attachment). According to Chase Douglas, geis_init returns NULL like it should because there is no utouch instance, but unity is not checking this situation. The multitouch/gesture stack is specific to Ubuntu for now, meaning this same situation will be hit by anyone else trying to ship unity.
Thread 1 (Thread 0xb6ee2880 (LWP 25437)):
#0 0xb4c1cc32 in geis_configurat
value=
status = GEIS_STATUS_
#1 0xb50a9cbd in GeisAdapter::Run (this=0xb41377c8)
at /build/
fd = -1
status = <optimized out>
#2 0xb5178249 in UnityScreen:
at /build/
ubus = 0x815f450
name = {static npos = <optimized out>,
pname = {static npos = <optimized out>,
size = {mWidth = -1218303667, mHeight = 134802068}
timer = {start_time_ = 81821953408}
extensions = 0xb5174820 "203円354円\
failed = 80
old_handler = 0x85e6118
ProblemType: Bug
DistroRelease: Ubuntu 11.10
Package: unity 4.18.0-0ubuntu1
ProcVersionSign
Uname: Linux 3.0.0-12-
.tmp.unity.
ApportVersion: 1.23-0ubuntu1
Architecture: i386
CompizPlugins: [core,bailer,
CompositorRunning: compiz
Date: Tue Sep 27 12:05:56 2011
DistUpgraded: Log time: 2011年06月08日 20:52:27.365855
DistroCodename: oneiric
DistroVariant: ubuntu
GlAlternative: lrwxrwxrwx 1 root root 24 2011年05月20日 20:04 /etc/alternativ
GraphicsCard:
Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller [8086:0126] (rev 09) (prog-if 00 [VGA controller])
Subsystem: Dell Device [1028:0493]
InstallationMedia: Ubuntu 11.04 "Natty Narwhal" - Beta i386 (20110330)
Lsusb:
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 003: ID 0a5c:5800 Broadcom Corp. BCM5880 Secure Applications Processor
MachineType: Dell Inc. Latitude E6420
ProcEnviron:
PATH=(custom, user)
LANG=en_US.UTF-8
SHELL=/bin/bash
ProcKernelCmdLine: BOOT_IMAGE=
SourcePackage: unity
UpgradeStatus: Upgraded to oneiric on 2011年06月09日 (110 days ago)
dmi.bios.date: 02/25/2011
dmi.bios.vendor: Dell Inc.
dmi.bios.version: X66
dmi.board.vendor: Dell Inc.
dmi.chassis.type: 9
dmi.chassis.vendor: Dell Inc.
dmi.modalias: dmi:bvnDellInc.
dmi.product.name: Latitude E6420
dmi.product.
dmi.sys.vendor: Dell Inc.
version.compiz: compiz 1:0.9.5.
version.libdrm2: libdrm2 2.4.26+
version.
version.
version.
version.
version.
version.
version.
version.
Related branches
- Sam Spilsbury (community): Approve
-
Diff: 46 lines (+7/-3) 1 file modifiedapiplugins/unityshell/src/GeisAdapter.cpp (+7/-3)
- Full backtrace of the crash on startup Edit (11.9 KiB, text/plain)
- BootDmesg.txt Edit (53.7 KiB, text/plain; charset="utf-8")
- BootLog.gz Edit (654 bytes, application/x-gzip)
- CurrentDmesg.txt Edit (3.7 KiB, text/plain; charset="utf-8")
- Dependencies.txt Edit (6.2 KiB, text/plain; charset="utf-8")
- DpkgLog.txt Edit (2.2 MiB, text/plain; charset="utf-8")
- GconfCompiz.txt Edit (37.1 KiB, text/plain; charset="utf-8")
- GdmLog.gz Edit (4.8 KiB, application/x-gzip)
- GdmLog1.gz Edit (4.8 KiB, application/x-gzip)
- GdmLog2.gz Edit (4.8 KiB, application/x-gzip)
- LightdmDisplayLog.txt Edit (1.0 KiB, text/plain; charset="utf-8")
- LightdmGreeterLog.txt Edit (7.7 KiB, text/plain; charset="utf-8")
- LightdmLog.txt Edit (5.7 KiB, text/plain; charset="utf-8")
- Lspci.txt Edit (12.1 KiB, text/plain; charset="utf-8")
- ProcCpuinfo.txt Edit (7.1 KiB, text/plain; charset="utf-8")
- ProcInterrupts.txt Edit (2.9 KiB, text/plain; charset="utf-8")
- ProcModules.txt Edit (2.2 KiB, text/plain; charset="utf-8")
- UdevDb.txt Edit (110.9 KiB, text/plain; charset="utf-8")
- UdevLog.txt Edit (274.3 KiB, text/plain; charset="utf-8")
- UnitySupportTest.txt Edit (617 bytes, text/plain; charset="utf-8")
- XorgLog.gz Edit (6.3 KiB, application/x-gzip)
- XorgLogOld.gz Edit (6.7 KiB, application/x-gzip)
- Xrandr.txt Edit (5.2 KiB, text/plain; charset="utf-8")
- dmidecode.txt.txt Edit (26.5 KiB, text/plain; charset="utf-8")
- drirc.txt Edit (768 bytes, text/plain; charset="utf-8")
- locale.txt Edit (327 bytes, text/plain; charset="utf-8")
- lsinput.txt.txt Edit (2.7 KiB, text/plain; charset="utf-8")
- monitors.xml.txt Edit (1.9 KiB, text/plain; charset="utf-8")
- peripherals.txt Edit (943 bytes, text/plain; charset="utf-8")
- setxkbmap.txt Edit (233 bytes, text/plain; charset="utf-8")
- xdpyinfo.txt Edit (9.7 KiB, text/plain; charset="utf-8")
- xinput.txt Edit (834 bytes, text/plain; charset="utf-8")
- xkbcomp.txt Edit (54.8 KiB, text/plain; charset="utf-8")
Status changed to 'Confirmed' because the bug affects multiple users.
Workaround if you got this bug after installing xorg-edgers ppa into Ubuntu 11.10: before system starts choose recovery mode in grub, then choose to continue normal boot, login into system, and type into terminal:
sudo ppa-purge xorg-edgers
After reboot Unity will work normally.
It looks like this revision of unity will fix it?
Building test packages to make sure.
No luck, with that commit backported
Program received signal SIGSEGV, Segmentation fault.
geis_configurat
540 geis_v1.c: No such file or directory.
in geis_v1.c
#0 geis_configurat
No locals.
#1 0x00007fffe5f9b626 in GeisAdapter::Run() () from /usr/lib/
No symbol table info available.
#2 0x00007fffe5fdc391 in UnityScreen:
No symbol table info available.
With that commit backported and utouch-geis 2.2.1-0ubuntu1
#0 0x00007ffff5223913 in select () from /lib/x86_
No symbol table info available.
(note: I control+z'd here to get a backtrace, it was hung)
#1 0x00007fffe44f9a9f in geis_init () from /usr/lib/
No symbol table info available.
#2 0x00007fffe5f9dc02 in GeisAdapter:
No symbol table info available.
#3 0x00007fffe5f9dd98 in GeisAdapter:
No symbol table info available.
#4 0x00007fffe5f9dee5 in GeisAdapter:
No symbol table info available.
#5 0x00007fffe6025e86 in Launcher:
No symbol table info available.
Is there nothing further on this? I imagine it will become critical for Precise fairly soon.
For now I just disabled geis from unity completely with http://
@Robert: thanks, it all works nicely.
@Robert
Thanks for the work around, it now works. I am wondering what happens when there is an upgrade in Unity or Compiz, will the version of Unity in xorg-edgers be upgraded too? I am expecting some upgrades in Unity and Compiz as there are a few outstanding bugs in those packages and not sure will Unity be broken again.
Thanks.
not sure if this is related to the multi touch portion being removed or not but when I am using this PPA my touch pad on my ASUS u43F goes crazy. It becomes supper sensitive making it very difficult to click on anything.
You aren't the first person to mention that with newer synaptics snapshots in there. Can you file a new bug with ubuntu-bug xserver-
sure I will do that.
Unity commit 1728 doesn't fully fix the issue because _root_instance is not always initialized properly. Ideally, it should be initialized to nullptr in the constructor.
Assigning to Mirco to finish the fix.
setting back to triaged per Chase's comment.
This has been fully fixed in unity 5.2.0.
Is the fix going to ever land in oneiric-updates? unity is still at version 4.28.0 there: