After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 567517 - Gnome keyring daemon hangs session startup
Gnome keyring daemon hangs session startup
Status: RESOLVED FIXED
Product: gnome-keyring
Classification: Core
Component: general
2.25.x
Other All
: High critical
: ---
Assigned To: GNOME keyring maintainer(s)
GNOME keyring maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2009-01-12 16:28 UTC by Mario Limonciello
Modified: 2009-02-02 08:18 UTC
See Also:
GNOME target: ---
GNOME version: 2.25/2.26


Attachments
backtrace (5.39 KB, text/plain)
2009-01-13 03:01 UTC, Mario Limonciello
Details

Description Mario Limonciello 2009-01-12 16:28:39 UTC
Steps to reproduce:
1. Log into an XFCE session with gnome keyring daemon installed


Stack trace:
The application isn't crashed, so there is no trace

Other information:
This is with version 2.25.4.1.  The session startup is hung unless you pkill gnome-keyring-daemon.  Trying to start it after the session has finished starting up works properly.
Comment 1 Sebastien Bacher 2009-01-12 16:38:54 UTC
ubuntu bugs about similar issues on https://bugs.launchpad.net/ubuntu/+source/gnome-keyring/+bug/316222 and https://bugs.launchpad.net/ubuntu/+source/gnome-keyring/+bug/316070, starting GNOME using gdm works correctly though
Comment 2 Stef Walter 2009-01-13 01:56:03 UTC
Interesting. Would it be possible to get a stack trace of gnome-keyring-daemon at that point? It may be that if you send it a SIGABRT signal or SIGSEGV it'd dump it's stack using your distro's app crash handler.

Alternatively you can attach to it using gdb, and get the stack trace that way. If you need assistance, let me know. I'd like to find this bug.
Comment 3 Mario Limonciello 2009-01-13 03:00:39 UTC
Here's a backtrace with SIGSEGV sent to the daemon when it's hung.  It doesn't look too useful to me but I might be missing something.

You might actually be better off trying to reproduce this yourself and working from that instead..
1) grab the latest xubuntu daily image from http://cdimages.ubuntu.com/xubuntu/daily-live/current/
2) install $FAVORITEVIRTUALMACHINEMANAGER
3) You should see it happen immediately when booted up.  You can press "alt-f2" and type "killall gnome-keyring-daemon" to proceed.
4) I'd recommend you do an install at this point in the VM so you have more memory to operate with and apport fully functional.  I seem to think it's disabled on live disks.
5) When you restart the VM, you should have the same results as the live disk and can debug from then forward as you please.
Comment 4 Mario Limonciello 2009-01-13 03:01:10 UTC
Created attachment 126329 [details]
backtrace
Comment 5 Stef Walter 2009-01-13 15:08:05 UTC
You're right, nothing in the backtrace. 

I could try and duplicate this and trouble-shoot it, but since my Gnome time is already super packed out preparing for 2.26, it may not be a top priority. I'll try to get to it at some point.

If anyone wants to help this along, then I'd work with them on it. Some ideas, notes for whoever ends up looking into this, possibly myself:

 * How does XFCE start gnome-keyring? See:

   http://live.gnome.org/GnomeKeyring/RunningDaemon
   http://live.gnome.org/GnomeKeyring/Pam

 * Is there anything in the syslog (auth facility, often /var/log/auth.log)

 * Is stuff in this file making XFCE session manager hang?

   http://svn.gnome.org/viewvc/gnome-keyring/trunk/daemon/gnome-keyring-daemon.desktop.in.in?revision=1421&view=markup
Comment 6 Sebastien Bacher 2009-01-13 16:36:45 UTC
the ubuntu gdm guest session which is a GNOME session started using gdmflexiserver for a temporary user has the same issue
Comment 7 Mario Limonciello 2009-01-13 18:04:15 UTC
* Is there anything in the syslog (auth facility, often /var/log/auth.log)

Just the same stuff as in .xsession-errors:

Jan 13 11:53:55 ubuntu gnome-keyring-daemon[4338]: adding removable location: volume_label_Mythbuntu_9_04_i386 at /cdrom
Jan 13 11:53:55 ubuntu gnome-keyring-daemon[4338]: another SSH agent is running at: /tmp/ssh-WrEscj4093/agent.4093
Jan 13 11:53:55 ubuntu gnome-keyring-daemon[4338]: couldn't set environment variable in session: The name org.gnome.SessionManager was not provided by any .service files

* Is stuff in this file making XFCE session manager hang: http://svn.gnome.org/viewvc/gnome-keyring/trunk/daemon/gnome-keyring-daemon.desktop.in.in?revision=1421&view=markup ?

No, it's not.  I removed the file before Xfce started (from /usr/share/gnome/autostart/gnome-keyring-daemon.desktop) and gkd is still hanging the startup process.
Comment 8 Mario Limonciello 2009-01-13 21:17:27 UTC
We've come up with a workaround for the xfce case.  It was related to how it was getting spawned (directly from xfce4-session).  The patch is to xfce4-session.

This is still a bug for ubuntu gdm guest session that should be addressed though.
Comment 9 Stef Walter 2009-01-30 22:52:45 UTC
Yes, I can duplicate the problem when running gdmflexiserver in Ubuntu, but I don't understand how it's related to gnome-keyring-daemon. 

Perhaps this is the issue:

x-session-manager[11585]: WARNING: Application 'seahorse-daemon.desktop' failed to register before timeout

In which case bug #569636
Comment 10 Sebastien Bacher 2009-01-31 10:52:45 UTC
the gnome-session warning just indicates that gnome-session continues but didn't get the registration that's not creating a hang, downgrading gnome-keyring workaround the issue so that's rather a gnome-keyring bug
Comment 11 Stef Walter 2009-02-02 08:18:15 UTC
Yes, but that gnome-session warning is about seahorse. I believe Adam Schreiber is working on that, and has closed the referenced bug #569636.

Please reopen this report if you feel that gnome-keyring-daemon is still preventing the session from starting. If so I'll work with you to get more details.