unity-greeter crashed with SIGSEGV in background_loader_ready_cb()

Bug #946674 reported by rjj
678
This bug affects 80 people
Affects Status Importance Assigned to Milestone
unity-greeter (Ubuntu)
Fix Released
High
Michael Terry

Bug Description

In Precise Pangolin Just restarted and then opened System Monitor

ProblemType: Crash
DistroRelease: Ubuntu 12.04
Package: unity-greeter 0.2.4-0ubuntu1
ProcVersionSignature: Ubuntu 3.2.0-17.27-generic-pae 3.2.6
Uname: Linux 3.2.0-17-generic-pae i686
NonfreeKernelModules: fglrx
ApportVersion: 1.94-0ubuntu1
Architecture: i386
Date: Sun Mar 4 23:10:38 2012
ExecutablePath: /usr/sbin/unity-greeter
InstallationMedia: Ubuntu 12.04 LTS "Precise Pangolin" - Beta i386 (20120301)
ProcCmdline: /usr/sbin/unity-greeter
SegvAnalysis:
 Segfault happened at: 0x8050636: mov (%eax),%eax
 PC (0x08050636) ok
 source "(%eax)" (0xaaaaaaaa) not located in a known VMA region (needed readable region)!
 destination "%eax" ok
SegvReason: reading unknown VMA
Signal: 11
SourcePackage: unity-greeter
StacktraceTop:
 ?? ()
 ?? () from /usr/lib/i386-linux-gnu/libgdk-3.so.0
 ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
 g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
 ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
Title: unity-greeter crashed with SIGSEGV in g_main_context_dispatch()
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups:

Revision history for this message
rjj (rjjonker) wrote :
Revision history for this message
Apport retracing service (apport) wrote :

StacktraceTop:
 background_loader_ready_cb (self=0x9283388) at background.c:677
 _background_loader_ready_cb_gsource_func (self=0x9283388) at background.c:747
 gdk_threads_dispatch (data=0x9380130) at /build/buildd/gtk+3.0-3.3.16/./gdk/gdk.c:745
 g_idle_dispatch (source=0x9539f48, callback=0xb7171020 <gdk_threads_dispatch>, user_data=0x9380130) at /build/buildd/glib2.0-2.31.18/./glib/gmain.c:4629
 g_main_dispatch (context=0x925c650) at /build/buildd/glib2.0-2.31.18/./glib/gmain.c:2510

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
summary: - unity-greeter crashed with SIGSEGV in g_main_context_dispatch()
+ unity-greeter crashed with SIGSEGV in background_loader_ready_cb()
tags: removed: need-i386-retrace
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
tags: added: bugpattern-needed
visibility: private → public
Revision history for this message
Sascha (skbierm-deactivatedaccount) wrote :

1) Ubuntu 12.04 LTS Beta 2 (nightly build)

2) unity-greeter: Installiert: 0.2.6-0ubuntu1

This bug occures occasionally when logging out from a sessioin - where NO encfs encrypted directory is used. Somehow it's not possible for the greeter to access/acknowledge the wallpaper of the user and crashes. The greeter crashes ENDLESSLY, until you are quick enough, to press the up-/down arrow on the keyboard and switch to the guest session.
If you restart the pc - in the hope, the bug will be gone after restart, you land on the same user after the restart - and the greeter goes on crashing, so restarting the pc is no solution.

Because you access the users setting from the user directory (I know you do it, because encfs let's you not acknowledge the users wallpaper - and change it in the greeter) - and the fact, that this bug crashes the greeter, you might have a possible security vulnerabillity.

Revision history for this message
Sascha (skbierm-deactivatedaccount) wrote :

Well, sshing into a machine, where this bug occures - and replacing the unity-greeter with whatever programm you like ... executes it after the next crash. Sorry to say so, but this is a potential security vulnerability.

Revision history for this message
Roger Olivé (bluemanro1991) wrote :

In my case, the bug appeared every time I used the login screen (now I'm using GDM as a workaround).

As said above, one way to stop the loop is moving up-down in the user list (if you have more than 1 user, if not simply moving to the guest session as the other user already said). I managed to stop it (sometimes) by moving to another tty console and going back to the login screen too.

The first time I logged in it didn't happen. It started happening after fully updating my fresh install of the beta 2, changing my wallpaper and adding 2 more users. Given what other people experienced, maybe it could be one of the updates?

Revision history for this message
Baldrick (bheath-nz) wrote :
Download full text (22.0 KiB)

I'm also affected by this bug. It doesn't happen every time on restart, but often.

Below is from my Lightdm.log. Hopefully it will be helpful in resolving this very annoying bug. It also happens when logging in/out from one user to another.

"[+0.00s] DEBUG: Logging to /var/log/lightdm/lightdm.log
[+0.00s] DEBUG: Starting Light Display Manager 1.1.9, UID=0 PID=1167
[+0.00s] DEBUG: Loaded configuration from /etc/lightdm/lightdm.conf
[+0.00s] DEBUG: Using D-Bus name org.freedesktop.DisplayManager
[+0.00s] DEBUG: Registered seat module xlocal
[+0.00s] DEBUG: Registered seat module xremote
[+0.00s] DEBUG: Adding default seat
[+0.00s] DEBUG: Starting seat
[+0.00s] DEBUG: Starting new display for greeter
[+0.00s] DEBUG: Starting local X display
[+0.02s] DEBUG: X server :0 will replace Plymouth
[+0.05s] DEBUG: Using VT 7
[+0.05s] DEBUG: Activating VT 7
[+0.05s] DEBUG: Logging to /var/log/lightdm/x-0.log
[+0.05s] DEBUG: Writing X server authority to /var/run/lightdm/root/:0
[+0.05s] DEBUG: Launching X Server
[+0.05s] DEBUG: Launching process 1204: /usr/bin/X :0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch -background none
[+0.05s] DEBUG: Waiting for ready signal from X server :0
[+0.05s] DEBUG: Acquired bus name org.freedesktop.DisplayManager
[+0.05s] DEBUG: Registering seat with bus path /org/freedesktop/DisplayManager/Seat0
[+0.85s] DEBUG: Got signal 10 from process 1204
[+0.85s] DEBUG: Got signal from X server :0
[+0.85s] DEBUG: Stopping Plymouth, X server is ready
[+0.88s] DEBUG: Connecting to XServer :0
[+0.88s] DEBUG: Starting greeter
[+0.88s] DEBUG: Started session 1403 with service 'lightdm', username 'lightdm'
[+0.96s] DEBUG: Session 1403 authentication complete with return value 0: Success
[+0.96s] DEBUG: Greeter authorized
[+0.96s] DEBUG: Logging to /var/log/lightdm/x-0-greeter.log
[+0.96s] DEBUG: Session 1403 running command /usr/lib/lightdm/lightdm-greeter-session /usr/sbin/unity-greeter
[+1.21s] DEBUG: Greeter connected version=1.1.9
[+1.21s] DEBUG: Greeter connected, display is ready
[+1.21s] DEBUG: New display ready, switching to it
[+1.21s] DEBUG: Activating VT 7
[+1.97s] DEBUG: Greeter start authentication for baldrick
[+1.97s] DEBUG: Started session 1650 with service 'lightdm', username 'baldrick'
[+1.98s] DEBUG: Session 1650 got 1 message(s) from PAM
[+1.98s] DEBUG: Prompt greeter with 1 message(s)
[+4.13s] DEBUG: Session 1403 exited with return value 0
[+4.14s] DEBUG: Greeter quit
[+4.14s] DEBUG: Failed to start greeter
[+4.14s] DEBUG: Stopping display
[+4.14s] DEBUG: Sending signal 15 to process 1204
[+4.15s] DEBUG: Greeter closed communication channel
[+4.24s] DEBUG: Process 1204 exited with return value 0
[+4.24s] DEBUG: X server stopped
[+4.24s] DEBUG: Removing X server authority /var/run/lightdm/root/:0
[+4.24s] DEBUG: Releasing VT 7
[+4.24s] DEBUG: Display server stopped
[+4.24s] DEBUG: Display stopped
[+4.24s] DEBUG: Active display stopped, switching to greeter
[+4.24s] DEBUG: Switching to greeter
[+4.24s] DEBUG: Starting new display for greeter
[+4.24s] DEBUG: Starting local X display
[+4.24s] DEBUG: Using VT 7
[+4.24s] DEBUG: Logging to /var/log/lightdm/x-0.log
[+4.24s] DEBUG: Writing X server authority ...

Revision history for this message
Rehan Khamaruddin (rsk02) wrote :

I no longer have this problem. It either went away after some updates or because I did a dpkg-reconfigure lightdm. At least, I haven't had this problem since the last couple of reboots.

Changed in unity-greeter (Ubuntu):
assignee: nobody → Michael Terry (mterry)
Changed in unity-greeter (Ubuntu):
importance: Medium → High
Revision history for this message
Michael Terry (mterry) wrote :

I see one way you might get a crash like this... It's because the fix for bug 942227 is slightly incomplete. According to that theory, the original stacktrace here is actually fixed by bug 942227, and the people claiming to have experienced this bug with 0.2.6 are actually suffering a very similar bug brought on by the incomplete fix for bug 942227.

However, that is conjecture -- though for sure, the fix needs to be fixed. :) I'll look into the claim in comment #6 that having an unreadable background brings this crash on. If that causes a new crash, I'll bundle up a fix for that too. Else, if I can't reproduce, I'm just going to assume I need to fix the fix. If that makes sense...

Revision history for this message
GuyR (guy-rouger) wrote :

HelloMichael,
Reading your comment explaining something was related to background, I remembered that I try a tweak to personnalize the background of lightdm.
below what I done previously
cd /usr/share/backgrounds
sudo cp LinuxGreen.png warty-final-ubuntu.png

And whith this picture I worked well until an upgrade where I face the infernal loop of lightdm with unity-greeter crash.

Since then I uses gdm.
Today I simply
sudo rm warty-final-ubuntu.png
sudo dpkg-reconfigure lightdm

And up to now I am able to login using lightdm.

So I believe there is a track for this bug, maybe it affects people which played with the lightdm background

Revision history for this message
Michael Terry (mterry) wrote :

So I'm having a hard time reproducing. I did get a crash once, with an unreadable background file, but I could not get it to happen again.

I put my fix-to-the-fix [1] into the ubuntu-desktop PPA [2]. I would super appreciate anyone that is experiencing this crash to report if that PPA helps.

[1] http://bazaar.launchpad.net/~unity-greeter-team/unity-greeter/trunk/revision/376
[2] https://launchpad.net/~ubuntu-desktop/+archive/ppa

Revision history for this message
Sascha (skbierm-deactivatedaccount) wrote :

@mterry, comment #13

Michael, you can easily provoke the bug. Edit with a editor of you're choice the /usr/share/backgrounds/contest/background-1.xml file - and set the files everywhere to non existing pictures, but after, you already have chosen it as background in you're settings.
Logout from the session - and you have a never ending crash provoked!

Revision history for this message
Roger Olivé (bluemanro1991) wrote :

But I don't understand your point. I have the same bug and I'm using a wallpaper from the default Ubuntu set. I don't think it is a non existing picture...

Revision history for this message
Michael Terry (mterry) wrote :

OK, I was able to reproduce by enabling the manual login option in lightdm.conf.

With my testing, this is already fixed by the patch for bug 962932.

Changed in unity-greeter (Ubuntu):
status: Confirmed → Fix Committed
Revision history for this message
Roger Olivé (bluemanro1991) wrote :

I've been trying some possibilities and I think I found the trigger of the bug in my system.

The idea is that the bug appears when the "default" user of the login screen uses a wallpaper DIFFERENT from the default one. This means that the bug won't appear if a user has changed the wallpaper but the default user (last logged) has the default one (for example, the guest). I checked that when I restore the default wallpaper in one user the bug doesn't happen for that user anymore.

When the loop crash happens, if I try to change using the arrows to a user with a changed wallpaper the loop keeps happening, so it enforces my theory. It is when you manage to select a user with the default wallpaper that the loop stops. When stopped, I can select a user with a different wallpaper without any problem.

And remember that by default wallpaper I mean ONLY the main default wallpaper, not the entire set. Choosing any other of the default wallpapers triggers the bug as well, it doesn't have to be downloaded from an external source.

Revision history for this message
Lewis Goddard (lewisgoddard) wrote :

I applied the fix, updated everything, and restarted. It did not crash, but it only seemed to happen 3/4 times before, so this is nowhere near definite for me.

Revision history for this message
Jan Środek (jan-srodek) wrote :

i executed
sudo rm -rf /var/lib/lightdm/.cache
logout
and unity-greeter works
until next reboot

i use standard, but non-default, wallpaper + 3 users with default one

Revision history for this message
Michael Terry (mterry) wrote :

Based on my testing, the latest upload I just made to Ubuntu will fix this. Please let me know if you still experience this after upgrading.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package unity-greeter - 0.2.7-0ubuntu1

---------------
unity-greeter (0.2.7-0ubuntu1) precise; urgency=low

  * New upstream bug-fix release
    - "Pressing escape key on lightdm greeter restarts xserver"
      (LP: #962932)
    - "unity-greeter crashed with SIGSEGV in background_loader_ready_cb"
      (LP: #946674)
    - "Onscreen Keyboard cannot be used to input password in
      unity-greeter" (LP: #878184)
 -- Michael Terry <email address hidden> Tue, 03 Apr 2012 15:50:50 -0400

Changed in unity-greeter (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
Roger Olivé (bluemanro1991) wrote :

It seems to work.

Thank you!

Revision history for this message
Baldrick (bheath-nz) wrote :

Worked for me, too. Thanks heaps!

Revision history for this message
tylerjwilk (tylerjwilk) wrote : Re: [Bug 946674] Re: unity-greeter crashed with SIGSEGV in background_loader_ready_cb()

Working here too!

On Wed, Apr 4, 2012 at 5:24 AM, Baldrick <email address hidden> wrote:

> Worked for me, too. Thanks heaps!
>
> --
> You received this bug notification because you are subscribed to a
> duplicate bug report (972051).
> https://bugs.launchpad.net/bugs/946674
>
> Title:
> unity-greeter crashed with SIGSEGV in background_loader_ready_cb()
>
> To manage notifications about this bug go to:
>
> https://bugs.launchpad.net/ubuntu/+source/unity-greeter/+bug/946674/+subscriptions
>

Revision history for this message
GuyR (guy-rouger) wrote :

Hello
It works but it seems the /etc/lightdm/unity-greeter.conf is useless now. Is that right?

Revision history for this message
Ubuntu QA Website (ubuntuqa) wrote :

This bug has been reported on the Ubuntu ISO testing tracker.

A list of all reports related to this bug can be found here:
http://iso.qa.ubuntu.com/qatracker/reports/bugs/946674

tags: added: iso-testing
Revision history for this message
professordes (d-a-johnston-hw) wrote :

The last round of updates seem to have fixed the crash for me too.

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.