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 574247 - g-k-d hangs, consumes CPU then segfaults
g-k-d hangs, consumes CPU then segfaults
Status: RESOLVED DUPLICATE of bug 575247
Product: gnome-keyring
Classification: Core
Component: general
2.25.x
Other Linux
: Normal critical
: ---
Assigned To: GNOME keyring maintainer(s)
GNOME keyring maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2009-03-05 11:43 UTC by Sebastien Bacher
Modified: 2009-03-18 00:00 UTC
See Also:
GNOME target: ---
GNOME version: 2.25/2.26



Description Sebastien Bacher 2009-03-05 11:43:16 UTC
the bug has been opened on https://bugs.launchpad.net/bugs/338158

"I have a keyring that should be unlocked at login. Attempting to use it (e.g. for ssh) causes me to be prompted for the keyring password, then the key password. It then provides authentication for a few ssh sessions, but after a while hits 100% CPU. Trying to use it after that causes it to segfault.

Attaching some output from running it with gdb and debugging symbols installed. I have stripped my key/passphrase.

# At this point gnome-keyring-daemon is consuming a lot of CPU and the ssh loop has hung
# grab a backtrace where we are

^C
Program received signal SIGINT, Interrupt.
[Switching to Thread 0xb7946720 (LWP 26117)]
0xb7ff4430 in __kernel_vsyscall ()
(gdb) thread apply all bt

Thread 22 (Thread 0xb77d1b90 (LWP 26208))

  • #0 egg_secure_free_full
    at egg-secure-memory.c line 346
  • #1 egg_secure_free
    at egg-secure-memory.c line 905
  • #2 _gcry_free
    at global.c line 642
  • #3 _gcry_mpi_free
    at mpiutil.c line 185
  • #4 gcry_mpi_release
    at visibility.c line 253
  • #5 gck_data_der_read_private_key_rsa
    at gck-data-der.c line 182
  • #6 gck_data_der_read_private_key
    at gck-data-der.c line 481
  • #7 parsed_pem_block
    at gck-ssh-openssh.c line 178
  • #8 egg_openssl_pem_parse
    at egg-openssl.c line 268
  • #9 gck_ssh_openssh_parse_private_key
    at gck-ssh-openssh.c line 372
  • #10 unlock_private_key
    at gck-ssh-private-key.c line 70
  • #11 gck_object_unlock
    at gck-object.c line 453
  • #12 gck_session_login_context_specific
    at gck-session.c line 654
  • #13 gck_module_C_Login
    at gck-module.c line 1090
  • #14 gck_C_Login
    at ../../pkcs11/gck/gck-module-ep.h line 438
  • #15 plex_C_Login
    at gck-plex-layer.c line 440
  • #16 auth_C_Login
    at gkr-pkcs11-auth-ep.c line 569
  • #17 authenticate_perform
    at gp11-session.c line 1083
  • #18 authenticate_perform
    at gp11-session.c line 1050
  • #19 perform_crypt
    at gp11-session.c line 1192
  • #20 perform_call
    at gp11-call.c line 87
  • #21 _gp11_call_sync
    at gp11-call.c line 400
  • #22 crypt_sync
    at gp11-session.c line 1257
  • #23 gp11_session_sign_full
    at gp11-session.c line 1466
  • #24 gp11_session_sign
    at gp11-session.c line 1448
  • #25 op_sign_request
    at gck-ssh-agent-ops.c line 898
  • #26 run_client_thread
    at gck-ssh-agent.c line 164
  • #27 g_thread_create_proxy
    at /build/buildd/glib2.0-2.19.10/glib/gthread.c line 635
  • #28 start_thread
    from /lib/tls/i686/cmov/libpthread.so.0
  • #29 clone
    from /lib/tls/i686/cmov/libc.so.6

Thread 22 (Thread 0xb77d1b90 (LWP 26208))

  • #0 egg_secure_free_full
    at egg-secure-memory.c line 346
  • #1 egg_secure_free
    at egg-secure-memory.c line 905
  • #2 _gcry_free
    at global.c line 642
  • #3 _gcry_mpi_free
    at mpiutil.c line 185
  • #4 gcry_mpi_release
    at visibility.c line 253
  • #5 gck_data_der_read_private_key_rsa
    at gck-data-der.c line 182
  • #6 gck_data_der_read_private_key
    at gck-data-der.c line 481
  • #7 parsed_pem_block
    at gck-ssh-openssh.c line 178
  • #8 egg_openssl_pem_parse
    at egg-openssl.c line 268
  • #9 gck_ssh_openssh_parse_private_key
    at gck-ssh-openssh.c line 372
  • #10 unlock_private_key
    at gck-ssh-private-key.c line 70
  • #11 gck_object_unlock
    at gck-object.c line 453
  • #12 gck_session_login_context_specific
    at gck-session.c line 654
  • #13 gck_module_C_Login
    at gck-module.c line 1090
  • #14 gck_C_Login
    at ../../pkcs11/gck/gck-module-ep.h line 438
  • #15 plex_C_Login
    at gck-plex-layer.c line 440
  • #16 auth_C_Login
    at gkr-pkcs11-auth-ep.c line 569
  • #17 authenticate_perform
    at gp11-session.c line 1083
  • #18 authenticate_perform
    at gp11-session.c line 1050
  • #19 perform_crypt
    at gp11-session.c line 1192
  • #20 perform_call
    at gp11-call.c line 87
  • #21 _gp11_call_sync
    at gp11-call.c line 400
  • #22 crypt_sync
  • #23 gp11_session_sign_full
    at gp11-session.c line 1466
  • #24 gp11_session_sign
    at gp11-session.c line 1448
  • #25 op_sign_request
    at gck-ssh-agent-ops.c line 898
  • #26 run_client_thread
    at gck-ssh-agent.c line 164
  • #27 g_thread_create_proxy
    at /build/buildd/glib2.0-2.19.10/glib/gthread.c line 635
  • #28 start_thread
    from /lib/tls/i686/cmov/libpthread.so.0
  • #29 clone
    from /lib/tls/i686/cmov/libc.so.6
The program is running.  Exit anyway? (y or n) y
-(cmsj@kodachi)-(~)- "
Comment 1 Stef Walter 2009-03-18 00:00:03 UTC
I know this bug was filed first, but I'm going to mark it a duplicate of bug #575247 since that has a detailed NEEDINFO that's going to get us to the root of this. 

Anyone is welcome to contribute to the information requested there. Thanks!

*** This bug has been marked as a duplicate of 575247 ***