Mysterious segfault of many GNOME programs makes gnome-session unresponsive

Bug #74682 reported by Matt Zimmerman
20
Affects Status Importance Assigned to Milestone
gnome-session (Ubuntu)
Fix Released
High
Ubuntu Desktop Bugs

Bug Description

We have observed a situation where several GNOME programs appear to segfault in quick succession, causing several instances of gnome_segv and bug-buddy to be launched. One of these is directed back at gnome-session itself.

When this happens, gnome-session stops responding to new client connections, so applications fail to start. strace shows gnome-session blocked in waitpid(2) waiting for the gnome_segv process for itself.

1000 4386 0.0 1.1 20980 10684 ? Ss 11:26 0:00 x-session-manager
1000 4421 0.0 0.0 4488 732 ? Ss 11:26 0:00 \_ /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session x-session-manager
1000 15113 0.0 0.6 17944 6144 ? S 17:29 0:00 \_ /usr/lib/libgnomeui-0/gnome_segv gnome-session 11 2.16.1
1000 15116 0.0 0.0 1660 472 ? S 17:29 0:00 \_ sh -c /usr/bin/bug-buddy --appname="gnome-session" --pid=4386 --package-ver="(null)"
1000 15117 0.0 0.6 22028 6312 ? S 17:29 0:00 \_ /usr/bin/bug-buddy --appname=gnome-session --pid=4386 --package-ver=(null)
[...]
1000 4487 0.0 0.8 50452 7412 ? Ss 11:26 0:00 gnome-power-manager
1000 15110 0.0 0.6 17944 6152 ? S 17:29 0:00 \_ /usr/lib/libgnomeui-0/gnome_segv gnome-power-manager 11 2.16.1
1000 15120 0.0 0.0 1660 476 ? S 17:29 0:00 \_ sh -c /usr/bin/bug-buddy --appname="gnome-power-manager" --pid=4487 --package-ver="(null)"
1000 15121 0.0 0.6 22024 6312 ? S 17:29 0:00 \_ /usr/bin/bug-buddy --appname=gnome-power-manager --pid=4487 --package-ver=(null)
[...]
1000 4478 0.0 1.0 59008 9932 ? Ssl 11:26 0:00 /usr/lib/evolution/2.8/evolution-alarm-notify
1000 15109 0.0 0.6 17948 6148 ? S 17:29 0:00 \_ /usr/lib/libgnomeui-0/gnome_segv evolution-alarm-notify 11 2.8.1
1000 15122 0.0 0.0 1664 468 ? S 17:29 0:00 \_ sh -c /usr/bin/bug-buddy --appname="evolution-alarm-notify" --pid=4478 --package-ver="(null)"
1000 15123 0.0 0.6 22028 6308 ? S 17:29 0:00 \_ /usr/bin/bug-buddy --appname=evolution-alarm-notify --pid=4478 --package-ver=(null)
[...]
1000 4472 0.0 1.2 52428 11732 ? Ss 11:26 0:00 update-notifier
1000 15111 0.0 0.6 17948 6156 ? S 17:29 0:00 \_ /usr/lib/libgnomeui-0/gnome_segv update-notifier 11
1000 15114 0.0 0.0 1664 472 ? S 17:29 0:00 \_ sh -c /usr/bin/bug-buddy --appname="update-notifier" --pid=4472 --package-ver="(null)"
1000 15115 0.0 0.6 22028 6308 ? S 17:29 0:00 \_ /usr/bin/bug-buddy --appname=update-notifier --pid=4472 --package-ver=(null)
[...]
1000 4463 0.0 0.6 18256 5432 ? Ss 11:26 0:00 gnome-volume-manager --sm-client-id default4
1000 15112 0.0 0.6 17948 6156 ? S 17:29 0:00 \_ /usr/lib/libgnomeui-0/gnome_segv gnome-volume-manager 11 2.15.0
1000 15118 0.0 0.0 1660 476 ? S 17:29 0:00 \_ sh -c /usr/bin/bug-buddy --appname="gnome-volume-manager" --pid=4463 --package-ver="(null)"
1000 15119 0.0 0.6 22028 6308 ? S 17:29 0:00 \_ /usr/bin/bug-buddy --appname=gnome-volume-manager --pid=4463 --package-ver=(null)

$ strace -p 4386 # x-session-manager (gnome-session)
Process 4386 attached - interrupt to quit
waitpid(15113, <unfinished ...>

$ strace <anything which attempts to connect to the session manager>
[...]
socket(PF_FILE, SOCK_STREAM, 0) = 10
uname({sys="Linux", node="christina-laptop", ...}) = 0
connect(10, {sa_family=AF_FILE, path="/tmp/.ICE-unix/4386"}, 21) = 0
fcntl64(10, F_SETFD, FD_CLOEXEC) = 0
write(10, "\0\1\0\0\0\0\0\0", 8) = 8
read(10, <unfinished ...> # hangs here indefinitely

No bug-buddy window is visible on the desktop.

No stack traces can be obtained from the processes which apparently segfaulted ("Failed to read a valid object file image from memory."), though this may be specific to one system and has not been confirmed.

Revision history for this message
Matt Zimmerman (mdz) wrote :

Sebastien noticed similar behaviour reported in http://bugzilla.gnome.org/show_bug.cgi?id=356857

Revision history for this message
Jane Silber (silbs) wrote :

I noticed this behaviour as well (up to date Edgy).

Several hours before noticing the issue, gaim crashed.

At some point during the day (perhaps at the time of the gaim crash) I also had some sort of error/bug reporting dialog (which I don't think was the Gnome bug buddy), which I canceled.

Not sure if either of these are related.

Revision history for this message
James Troup (elmo) wrote :

I also had this problem. At the end of the day, I tried to hibernate only to discover I couldn't open any GNOME applications or menu items including System -> Quit. I'm afraid I can't contribute any useful diagnostics because I was in a hurry, so I simply hard power-downed the laptop. But, FWIW, I had cancelled a bug buddy invocation after galeon crashed for me, earlier in the day.

Revision history for this message
Matt Zimmerman (mdz) wrote :

I'm seeing strong indications that debugging with gdb is broken due to the kernel used on this system; I can repeat the "Failed to read a valid object file image from memory" error with any process I launch, and also on my Feisty system with 2.6.19. This problem does not occur with a stock Edgy system running 2.6.17, so backtraces from crashing programs on stock Edgy systems would be helpful in diagnosing this problem.

Revision history for this message
Steve Alexander (stevea) wrote :

I was able to reproduce this by launching lots of gnome-help instances, exhausting all of my machine's memory, observing various processes being killed, killall gnome-help, manually closing/cancelling various bugbuddy windows, and then observing that I can't run gnome programs.

In pstree:

  +-update-notifier---gnome_segv2---sh---bug-buddy

attached gdb to the update-notifier process, attached gdb bt and registers.

Revision history for this message
Sebastien Bacher (seb128) wrote :

I got a similar dbus crasher on my desktop and opened bug #74946 about it, reassigning that one to gnome-session for the segv handler lock

Revision history for this message
gerard67 (mathieu-petit) wrote :

Hi,
I opened a bug yesturday that might be related to this (https://bugs.launchpad.net/ubuntu/+source/linux-restricted-modules-2.6.22/+bug/137152) . I wasn't sure of the package involved and thout it was related to the video drivers .. anyway symptoms are the same...

Revision history for this message
Máté Őry (orymate) wrote :

I also have this bug with an up to date gutsy. When I choose System » Quit, the full X session hangs for about one minute. Then I get the dialog without hibernation and standby options. This happens ~9 times of 10.

I find every time this in .xsession-errors:
** (x-session-manager:5613): WARNING **: Couldn't connect to PowerManager Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

Revision history for this message
Sebastien Bacher (seb128) wrote :

could you try if that's still an issue in hardy or intrepid?

Changed in gnome-session:
status: New → Incomplete
Revision history for this message
Matt Zimmerman (mdz) wrote : Re: [Bug 74682] Re: Mysterious segfault of many GNOME programs makes gnome-session unresponsive

On Sat, Aug 02, 2008 at 01:43:24PM -0000, Sebastien Bacher wrote:
> could you try if that's still an issue in hardy or intrepid?

I'm not sure...I suppose I could try killall -SEGV within my session and see
what happens. :-)

--
 - mdz

Revision history for this message
Martin Mai (mrkanister-deactivatedaccount-deactivatedaccount) wrote :

We were wondering if this is still an issue for you. Can you try with the latest Ubuntu release? Thanks in advance.

Revision history for this message
Matt Zimmerman (mdz) wrote :

It looks like this was probably "fixed" by removing the segv handler from libgnomeui:

libgnomeui 2.19.1

* Fix crash in thumbnailing code (#452907, Felix Riemann)
* Use xdg-user-dirs to get Destkop directory shortcut (#459854, Luca Ferretti)
* Remove segv handler (Fernando Herrera)
* Add orientation tag support to the thumbnailer (#440978, Michael J. Chudobiak)
* Deprecate GnomeDruid (#429178, Matthew Barnes)
* Use Requires.private for nonpublic requirements (#396255; J.H.M. Dassen (Ray))

Revision history for this message
Chris Coulson (chrisccoulson) wrote :

Thanks, closing this as fixed now. gnome-session doesn't user libgnomeui now anyway.

Changed in gnome-session (Ubuntu):
status: Incomplete → 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.