Ubuntu

unity-2d-places crashed with SIGSEGV in QMetaObject::metacall()

Reported by Didier Roche on 2011-06-01
256
This bug affects 31 people
Affects Status Importance Assigned to Milestone
Qt
Fix Committed
Undecided
Unassigned
unity-2d
Critical
Unassigned
gcc-4.6 (Ubuntu)
Critical
Unassigned
Oneiric
Critical
Unassigned
libqt-declarative (Arch Linux)
Invalid
Undecided
Unassigned
qt4-x11 (Ubuntu)
Critical
Canonical Desktop Experience Team
Oneiric
Critical
Canonical Desktop Experience Team

Bug Description

Binary package hint: unity-2d

Try to show the places in today's oneiric

ProblemType: Crash
DistroRelease: Ubuntu 11.10
Package: unity-2d-places 3.8.6-0ubuntu2
ProcVersionSignature: Ubuntu 2.6.39-3.10-generic 2.6.39
Uname: Linux 2.6.39-3-generic i686
NonfreeKernelModules: nvidia
Architecture: i386
Date: Wed Jun 1 14:30:39 2011
ExecutablePath: /usr/bin/unity-2d-places
InstallationMedia: Ubuntu 11.04 "Natty Narwhal" - Release i386 (20110427)
ProcCmdline: /usr/bin/unity-2d-places
ProcEnviron:
 SHELL=/bin/bash
 LANGUAGE=fr_FR:fr:en_GB:en
 LANG=fr_FR.UTF-8
SegvAnalysis:
 Segfault happened at: 0x8c6191: mov %eax,(%ecx)
 PC (0x008c6191) ok
 source "%eax" ok
 destination "(%ecx)" (0x00000006) not located in a known VMA region (needed writable region)!
SegvReason: writing NULL VMA
Signal: 11
SourcePackage: unity-2d
StacktraceTop:
 ?? () from /usr/lib/libQtDeclarative.so.4
 ?? () from /usr/lib/libQtDeclarative.so.4
 ?? () from /usr/lib/libQtDeclarative.so.4
 QMetaObject::metacall(QObject*, QMetaObject::Call, int, void**) () from /usr/lib/libQtCore.so.4
 QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
Title: unity-2d-places crashed with SIGSEGV in QMetaObject::metacall()
UpgradeStatus: Upgraded to oneiric on 2011-05-30 (2 days ago)
UserGroups: adm admin cdrom dialout lpadmin plugdev sambashare

Didier Roche (didrocks) wrote :
Didier Roche (didrocks) wrote :

Manual retrace, with love

visibility: private → public
Changed in unity-2d:
importance: Undecided → Critical
Florian Boucault (fboucault) wrote :

Confirmed by duplicate.

Changed in unity-2d:
status: New → Confirmed
milestone: none → 3.10
Changed in unity-2d (Ubuntu):
status: New → Confirmed
tags: added: iso-testing
Changed in unity-2d (Ubuntu):
importance: Undecided → Critical
Changed in unity-2d (Ubuntu Oneiric):
assignee: nobody → Canonical Desktop Experience Team (canonical-dx-team)

In case it's useful, my duplicate bug 792238 contains additional description of how the UI appears to behave both before and after the crash occurs (e.g., after the crash, clicking the home button ineffectually toggles it between the pressed and unpressed states, without any menu coming up).

Not full backtrace in "manual_retrace"

#56 0x08051c50 in DashAdaptor::qt_metacall(QMetaObject::Call, int, void**) ()
No symbol table info available.
#57 0x00a79788 in ?? () from /usr/lib/libQtDBus.so.4

Using the information about missing symbols furnished by Didier Roche's trace, I just installed all the relevant debug symbol packages and ran unity-2d-places from the Terminal. In this way, I created duplicate bug 793044, which contains a considerably more complete stack trace (for all threads), and also possibly relevant console messages.

For those of you who are only interested in looking at the stack trace:
https://bugs.launchpad.net/ubuntu/+source/unity-2d/+bug/793044/+attachment/2155414/+files/Stacktrace.txt
https://bugs.launchpad.net/ubuntu/+source/unity-2d/+bug/793044/+attachment/2155415/+files/ThreadStacktrace.txt

For more details, see bug 793044 itself.

Didier Roche (didrocks) wrote :

@Cristian: there is generally no more point to install debug symbols if not relevant past frame 30/40, here is frame 56, hence not installing the symbols file from there.

@Eliah: thanks for the stacktrace, continuing debugging this issue, I rebuilt qt with gcc 4.5 in oneiric instead of 4.6, and the issue is fixed by that. Now, time to hunt what gcc 4.6 does wrong, which won't be a joy

Didier Roche (didrocks) on 2011-06-06
affects: unity-2d (Ubuntu Oneiric) → qt4-x11 (Ubuntu Oneiric)
Didier Roche (didrocks) on 2011-06-06
Changed in gcc-defaults (Ubuntu Oneiric):
status: New → Confirmed
importance: Undecided → Critical
Didier Roche (didrocks) wrote :

took in touch with the Qt guys: http://bugreports.qt.nokia.com/browse/QTBUG-19736 (launchpad doesn't recognize the url as a bug tracker link)

Matthias Klose (doko) wrote :

please lets rebuild qt4-x11 using a tightened b-d on g++-4.6 (>= 4.6.0-11ubuntu2) first, then scan for warnings like the ones that the upstream report points to.

affects: gcc-defaults (Ubuntu Oneiric) → gcc-4.6 (Ubuntu Oneiric)
Didier Roche (didrocks) wrote :

so, just some catchup in this bug:
- tried with a newer gcc 4.6, still segfaulting
- tried with a -f-no-omit-frame-pointer, still segfaulting

wigglytext.qml example from qt4-demos segfault as well with Qt compiled with this version of gcc. See attached backtrace.

Didier Roche (didrocks) on 2011-06-08
Changed in gcc-4.6 (Ubuntu Oneiric):
status: Confirmed → Invalid
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package qt4-x11 - 4:4.7.3-1ubuntu2

---------------
qt4-x11 (4:4.7.3-1ubuntu2) oneiric; urgency=low

  [ Chase Douglas ]
  * Fix touch end event handling, LP: #785433
    - Updated kubuntu_28_xi2.1.patch with the fix

  [ Didier Roche ]
  * debian/rules:
    - use -fno-strict-aliasing for now as a lot of QML codes broke because of
      aliasing wrongly optimized. Issue under work upstream. (LP: #791213)
 -- Didier Roche <email address hidden> Wed, 08 Jun 2011 17:20:48 +0200

Changed in qt4-x11 (Ubuntu Oneiric):
status: Confirmed → Fix Released

Added libqt-declarative in Arch Linux, as it was confirmed there by Andrea Scarpino (http://bugreports.qt.nokia.com/browse/QTBUG-19736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=156025#comment-156025). Added Qt (also without a link, since Launchpad doesn't integrate with JIRA) while I was at it. I hope these additions are considered correct; if not, marking them Invalid won't hurt my feelings. ;-)

Didier Roche (didrocks) wrote :

@Eliah: no worry, it's correct. Just think to close the Qt upstream bug report once fixed upstream manually please :)

@Didier Roche: Will do.

Marking Invalid in libqt-declarative in Arch Linux, since Andrea Scarpino has deleted the comment on the upstream Qt bug tracker that had confirmed it for Arch Linux (and searching https://bugs.archlinux.org doesn't reveal a report separately confirming it).

Changed in libqt-declarative (Arch Linux):
status: New → Invalid
Changed in unity-2d:
status: Confirmed → Fix Released
Changed in unity-2d:
milestone: 3.10 → 3.8.8
Changed in qt:
status: New → Confirmed
Changed in qt:
status: Confirmed → In Progress
Changed in qt:
status: In Progress → Fix Committed
To post a comment you must log in.