unity-greeter crashed with SIGSEGV in indicator_object_get_entries()

Bug #921998 reported by Daniel Hahler
142
This bug affects 29 people
Affects Status Importance Assigned to Milestone
Unity Greeter
Fix Released
High
Unassigned
unity-greeter (Ubuntu)
Fix Released
High
Michael Terry
Precise
Fix Released
High
Michael Terry

Bug Description

Since the last updates, I cannot log in through lightdm anymore: it appears the unity greeter is crashing, before I see the password dialog/prompt.

I can login using "startx" and when using "gdm" as default display manager.

ProblemType: Crash
DistroRelease: Ubuntu 12.04
Package: unity-greeter 0.2.0-0ubuntu5
ProcVersionSignature: Ubuntu 3.2.0-10.18-generic-pae 3.2.1
Uname: Linux 3.2.0-10-generic-pae i686
ApportVersion: 1.91-0ubuntu1
Architecture: i386
Date: Thu Jan 26 10:40:39 2012
ExecutablePath: /usr/sbin/unity-greeter
InstallationMedia: Ubuntu 11.04 "Natty Narwhal" - Release i386 (20110427.1)
ProcCmdline: /usr/sbin/unity-greeter
ProcEnviron:
 LC_TIME=en_US.UTF-8
 PATH=(custom, no user)
 LANG=en_US.UTF-8
 SHELL=/bin/false
SegvAnalysis:
 Segfault happened at: 0xb77b2090 <indicator_object_get_entries+64>: mov 0xc(%eax),%eax
 PC (0xb77b2090) ok
 source "0xc(%eax)" (0x0000000c) not located in a known VMA region (needed readable region)!
 destination "%eax" ok
SegvReason: reading NULL VMA
Signal: 11
SourcePackage: unity-greeter
StacktraceTop:
 indicator_object_get_entries () from /usr/lib/libindicator3.so.7
 ?? ()
 g_object_newv () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
 g_object_new_valist () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
 g_object_new () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
Title: unity-greeter crashed with SIGSEGV in indicator_object_get_entries()
UpgradeStatus: Upgraded to precise on 2011-12-16 (41 days ago)
UserGroups:

Revision history for this message
Daniel Hahler (blueyed) wrote :
Revision history for this message
Apport retracing service (apport) wrote :

StacktraceTop:
 indicator_object_get_entries (io=0x0) at /build/buildd/libindicator-0.4.90/./libindicator/indicator-object.c:605
 menu_bar_setup_indicators (self=0x8401038) at menubar.c:785
 menu_bar_constructor (type=138386632, n_construct_properties=1, construct_properties=0x83f72e0) at menubar.c:1404
 g_object_newv (object_type=138386632, n_parameters=1, parameters=0x83f7148) at /build/buildd/glib2.0-2.31.12/./gobject/gobject.c:1703
 g_object_new_valist (object_type=138386632, first_property_name=0x805c934 "background", var_args=0xbfe7f010 "40.\267\b") at /build/buildd/glib2.0-2.31.12/./gobject/gobject.c:1820

Revision history for this message
Apport retracing service (apport) wrote : Stacktrace.txt
Revision history for this message
Apport retracing service (apport) wrote : ThreadStacktrace.txt
Changed in unity-greeter (Ubuntu):
importance: Undecided → Medium
tags: removed: need-i386-retrace
Daniel Hahler (blueyed)
description: updated
Changed in unity-greeter (Ubuntu):
importance: Medium → High
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in unity-greeter (Ubuntu):
status: New → Confirmed
Revision history for this message
Sebastien Bacher (seb128) wrote :

The greeter segfaults if indicator-datetime is not installed, Michael could you look at it? One easy workaround is to add a Depends but ideally the greeter wouldn't segfault

visibility: private → public
Changed in unity-greeter (Ubuntu Precise):
assignee: nobody → Michael Terry (mterry)
Revision history for this message
Sebastien Bacher (seb128) wrote :
Revision history for this message
Sebastien Bacher (seb128) wrote :

comment from bug #921953

"Can everyone experiencing this issue please check the greeter log in /var/log/lightdm/ and look for a line similar to:

WARNING: File '/usr/lib/indicators3/7/libdatetime.so' does not exist

and if you find it, make sure indicator-datetime is installed. The issue, based on a discussion in irc, seems to be that unity-greeter doesn't check for a null indicator object after attempting to load it from a file in src/menubar.vala:304."

Changed in unity-greeter (Ubuntu Precise):
milestone: none → precise-alpha-2
Revision history for this message
Fabien Tassin (fta) wrote :

crashes for me but indicator-datetime is installed... but /usr/lib/indicators3/7/libpower.so is not.

[+0.08s] DEBUG: menubar.vala:450: Adding indicator object 0x25e42d8 at position 1
[+0.08s] WARNING: File '/usr/lib/indicators3/7/libpower.so' does not exist.
[+0.08s] WARNING: invalid (NULL) pointer instance
[+0.08s] CRITICAL: g_signal_connect_object: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed
[+0.08s] WARNING: invalid (NULL) pointer instance
[+0.08s] CRITICAL: g_signal_connect_object: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed
[+0.08s] CRITICAL: get_all_entries: assertion `INDICATOR_IS_OBJECT(io)' failed

Revision history for this message
LaMont Jones (lamont) wrote :

Somewhere in the pile, there is a missing Depends: indicator-datetime indicator-power. Installing both of those packages lets the unity-greeter run again.

The failure mode of X constantly launching something that dies does make debugging it rather painful. It would be good to wrap unity-greeter with something that counts how many times it dies, and if it gets high enough, STOPS LAUNCHING IT and does a sleep 9999999h. That way, one can switch to another vt to deal with it, instead of needing to reboot, break, and chmod a-x /usr/bin/X or so to get it to stop hurting so much.

Revision history for this message
Ritesh Raj Sarraf (rrs) wrote : Re: [Bug 921998] Re: unity-greeter crashed with SIGSEGV in indicator_object_get_entries()

On 01/28/2012 04:24 AM, LaMont Jones wrote:
> Somewhere in the pile, there is a missing Depends: indicator-datetime
> indicator-power. Installing both of those packages lets the unity-
> greeter run again.
>
> The failure mode of X constantly launching something that dies does make
> debugging it rather painful. It would be good to wrap unity-greeter
> with something that counts how many times it dies, and if it gets high
> enough, STOPS LAUNCHING IT and does a sleep 9999999h. That way, one can
> switch to another vt to deal with it, instead of needing to reboot,
> break, and chmod a-x /usr/bin/X or so to get it to stop hurting so much.

Totally agree. The way the failure occured, it tooks my a couple reboots
to narrow it down to libghtdm. Even saKing the process didn't help. It
froze the system.

Ritesh

--
Ritesh Raj Sarraf
RESEARCHUT - http://www.researchut.com
"Necessity is the mother of invention."

tags: added: rls-mgr-p-tracking
Revision history for this message
Sebastien Bacher (seb128) wrote :

Jason, thanks for your work, do you think you could do an upstream merge request against lp:unity-greeter?

Revision history for this message
Robert Ancell (robert-ancell) wrote :

Jason's patch is committed to trunk which should allow unity-greeter to gracefully handle missing indicators. The packaging branch has also been updated to recommend the default indicators.

Changed in unity-greeter:
status: New → Fix Committed
importance: Undecided → High
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package unity-greeter - 0.2.0-0ubuntu6

---------------
unity-greeter (0.2.0-0ubuntu6) precise; urgency=low

  * debian/patches/handle_missing_indicators.patch:
    - backported from trunk, handle missing indicators (lp: #921998)
  * debian/patches/working_session_selector.patch:
    - backported from trunk, make the session selector work (lp: #918657)

  [ Robert Ancell ]
  * debian/control:
    - Add recommends on indicator-session, indicator-datetime, indicator-power,
      indicator-sound (LP: #921998)
 -- Sebastien Bacher <email address hidden> Tue, 31 Jan 2012 18:59:57 +0100

Changed in unity-greeter (Ubuntu Precise):
status: Confirmed → Fix Released
Changed in unity-greeter:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

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