gnome-session crashed with SIGSEGV in SmsDie()

Bug #437425 reported by Muhammad Negm on 2009-09-26
126
This bug affects 20 people
Affects Status Importance Assigned to Milestone
gnome-session
Fix Released
Critical
gnome-session (Ubuntu)
Medium
Chris Coulson

Bug Description

Binary package hint: gnome-session

idon't know what happend i do know that my home was unaccessible as it was encrypted

ProblemType: Crash
Architecture: i386
Date: Sun Sep 27 01:30:51 2009
DistroRelease: Ubuntu 9.10
ExecutablePath: /usr/bin/gnome-session
NonfreeKernelModules: nvidia
Package: gnome-session-bin 2.28.0-0ubuntu3
ProcCmdline: gnome-session
ProcEnviron:
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 2.6.31-11.36-generic
SegvAnalysis:
 Segfault happened at: 0x7bb07a <SmsDie+26>: mov 0x4(%eax),%esi
 PC (0x007bb07a) ok
 source "0x4(%eax)" (0x00000004) not located in a known VMA region (needed readable region)!
 destination "%esi" ok
SegvReason: reading NULL VMA
Signal: 11
SourcePackage: gnome-session
StacktraceTop:
 SmsDie () from /usr/lib/libSM.so.6
 ?? ()
 ?? ()
 g_hash_table_find () from /lib/libglib-2.0.so.0
 ?? ()
Title: gnome-session crashed with SIGSEGV in SmsDie()
Uname: Linux 2.6.31-11-generic i686
UserGroups: adm admin audio cdrom dialout dip fax fuse lpadmin netdev plugdev sambashare video

Muhammad Negm (ravingeek) wrote :

StacktraceTop:SmsDie (smsConn=0x0) at ../../src/sm_manager.c:312
xsmp_stop (client=0x83b3330, error=0xbf9e7dcc)
_client_stop (
g_hash_table_find () from /lib/libglib-2.0.so.0
start_phase (manager=0x83b6008) at gsm-manager.c:754

Changed in gnome-session (Ubuntu):
importance: Undecided → Medium
tags: removed: need-i386-retrace
visibility: private → public
Chris Coulson (chrisccoulson) wrote :

Thank you for your bug report. This bug has been reported to the developers of the software. You can track it and make comments at: https://bugzilla.gnome.org/show_bug.cgi?id=598211

Changed in gnome-session (Ubuntu):
assignee: nobody → Ubuntu Desktop Bugs (desktop-bugs)
status: New → Triaged
Chris Coulson (chrisccoulson) wrote :

Does anyone have a reliable way to trigger this?

Chris Coulson (chrisccoulson) wrote :

What is happening here is that a new client is opening an ICE connection in the GSM_MANAGER_PHASE_END_SESSION phase, which causes a new GsmXSMPClient to be added to the client store. The GSM_MANAGER_PHASE_EXIT phase then begins before the client has had a chance to establish a xsmp connection, which means that the smsConn for the client will not be initialized at the point that xsmp_stop is called on the new unregistered client.

This is easily reproducible by running something that uses xsmp (such as Metacity) in GDB, and breaking on IceProtocolSetup. Once this call has been reached (and the client interrupted at this point), logging out of your session will make gnome-session crash with 100% repeatability.

Changed in gnome-session (Ubuntu):
assignee: Ubuntu Desktop Bugs (desktop-bugs) → Chris Coulson (chrisccoulson)
Changed in gnome-session (Ubuntu):
status: Triaged → In Progress
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gnome-session - 2.28.0-0ubuntu5

---------------
gnome-session (2.28.0-0ubuntu5) karmic; urgency=low

  * debian/patches/100_fix_xsmp_stop_crash.patch:
    - Bugzilla patch to fix a crash when calling gsm_client_stop on
      an unregistered XSMP client in the client store (LP: #437425)
  * debian/patches/101_screen_lock_on_suspend.patch:
    - Use the same logic as gnome-power-manager for deciding the "screen
      lock on suspend" policy. This restores the Jaunty behaviour rather
      than just using the screensaver settings, which is surprising for
      users (LP: #446191)

 -- Chris Coulson <email address hidden> Fri, 23 Oct 2009 12:39:15 +0200

Changed in gnome-session (Ubuntu):
status: In Progress → Fix Released
Florian (soare-florian) on 2009-10-23
Changed in gnome-session (Ubuntu):
status: Fix Released → Fix Committed
Chris Coulson (chrisccoulson) wrote :

soare-florian - What did you change the status for? Please don't just change the status without leaving an explanation why

Changed in gnome-session (Ubuntu):
status: Fix Committed → Fix Released
Changed in gnome-session:
importance: Unknown → Critical
status: Unknown → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

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