Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 423993

Summary: gnome-base/gnome-keyring: unable to create a new keyring due general protection
Product: Gentoo Linux Reporter: Julien Cabessut <julien.cabessut>
Component: [OLD] GNOMEAssignee: Gentoo Linux Gnome Desktop Team <gnome>
Status: RESOLVED WORKSFORME    
Severity: normal CC: ciici1234, crypto, kernel
Priority: Normal    
Version: autobuilds   
Hardware: x86   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: Kernel config
emerge --info
gnome crash report
~./xsession.errors

Description Julien Cabessut 2012-06-28 15:47:41 UTC
Created attachment 316559 [details]
Kernel config

Issue with gnome-keyring-daemon on a fresh x86 install.

First occurrence when I launched Evolution and set up my mail account. After the wizard completed, Evolution asked for my mail password, and then asked me to enter a password to create a keyring for storing my information.

Clicking "Accept" after choosing a password hanged Evolution.

I have reproduced this issue with every application that uses gnome-keyring (NetworkManager, gnome-rdp, etc.).

My /~/.gnome2/keyrings/ folder is full of incremental "login.keyring" files with a size of O bytes each.

/var/log/messages indicates the following error at each attempt : gnome-keyring-daemon : no data returned from prompt. Not been able to create a keyring with Seahorse : it hangs like other apps after choosing a keyring password.

Information attached, no gdb output because I really didn't know how to use it in this case. I included the gnome crash report, though.

Sorry if I'm being stupid.
Comment 1 Julien Cabessut 2012-06-28 15:48:16 UTC
Created attachment 316561 [details]
emerge --info
Comment 2 Julien Cabessut 2012-06-28 15:48:34 UTC
Created attachment 316563 [details]
gnome crash report
Comment 3 Julien Cabessut 2012-06-28 16:35:34 UTC
Portage 2.1.10.65 (default/linux/x86/10.0/desktop/gnome, gcc-4.5.3, glibc-2.14.1-r3, 3.2.12-gentoo i686)
=================================================================
System uname: Linux-3.2.12-gentoo-i686-Intel-R-_Core-TM-_i7-2760QM_CPU_@_2.40GHz-with-gentoo-2.1
Timestamp of tree: Wed, 27 Jun 2012 20:45:01 +0000
app-shells/bash:          4.2_p20
dev-lang/python:          2.7.3-r2, 3.2.3
dev-util/cmake:           2.8.7-r5
dev-util/pkgconfig:       0.26
sys-apps/baselayout:      2.1-r1
sys-apps/openrc:          0.9.8.4
sys-apps/sandbox:         2.5
sys-devel/autoconf:       2.13, 2.68
sys-devel/automake:       1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:       2.21.1-r1
sys-devel/gcc:            4.5.3-r2
sys-devel/gcc-config:     1.6
sys-devel/libtool:        2.4-r1
sys-devel/make:           3.82-r1
sys-kernel/linux-headers: 3.1 (virtual/os-headers)
sys-libs/glibc:           2.14.1-r3
Repositories: gentoo
ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="* -@EULA"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=native -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -march=native -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -march=i686 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles news parallel-fetch parse-eapi-ebuild-head protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS="-O2 -march=i686 -pipe"
GENTOO_MIRRORS="http://gentoo.modulix.net/gentoo/"
LANG="fr_FR.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="fr"
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync3.fr.gentoo.org/gentoo-portage"
USE="X a52 aac acl acpi alsa berkdb bluetooth branding bzip2 cairo cdda cdr cli colord consolekit cracklib crypt cups cxx dbus dri dts dvd dvdr eds emboss encode evo exif fam firefox flac fortran gdbm gif gnome gnome-keyring gnome-online-accounts gpm gstreamer gtk iconv ipv6 jpeg lcms ldap libnotify mad mng modules mp3 mp4 mpeg mudflap nautilus ncurses nls nptl ogg opengl openmp pam pango pcre pdf png policykit ppds pppd pulseaudio qt3support qt4 readline sdl session socialweb spell ssl startup-notification svg tcpd tiff truetype udev udisks unicode upower usb vorbis wxwidgets x264 x86 xcb xml xorg xulrunner xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="fr" PHP_TARGETS="php5-3" PYTHON_TARGETS="python3_2 python2_7" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 4 Julien Cabessut 2012-06-28 18:08:32 UTC
Just saw new messages in /var/log/messages, appearing when an application tries to access the keyring :

kernel: [  895.713989] gnome-keyring-d[3121] general protection ip:b7597fbd sp:bfe5a93c error:0 in libgcrypt.so.11.7.0[b756d000+78000]
gnome-screensaver-dialog: couldn't read data from gnome-keyring-daemon: unexpected end of data
gnome-screensaver-dialog: gkr-pam: couldn't unlock the login keyring.
gnome-keyring-daemon[3338]: couldn't connect to control socket at: /tmp/keyring-wotfyA/control: Connexion refusée
Comment 5 Anthony Garnier 2012-07-01 05:29:05 UTC
Confirming.

In /var/log/messages :

Jul  1 07:26:14 localhost kernel: gnome-keyring-d[5767] general protection ip:b75d99e4 sp:bff20e9c error:0 in libgcrypt.so.11.7.0[b75b1000+73000]
Jul  1 07:26:17 localhost gnome-keyring-daemon[6801]: couldn't connect to control socket at: /tmp/keyring-IABQA3/control: Connexion refusée

I cant get automatic pam key opening any more.

This bug happened right after this emerge -uDN world (I rebooted):

[ebuild     U  ] sys-devel/automake-wrapper-7 [6]
[ebuild     U  ] sys-devel/m4-1.4.16 [1.4.15]
[ebuild  N     ] sys-libs/mtdev-1.1.2  USE="-static-libs" 
[ebuild     U  ] media-libs/libmatroska-1.3.0 [1.2.0] USE="-static-libs%" 
[ebuild  N     ] sys-apps/gptfdisk-0.8.4 
[ebuild     U  ] x11-base/xorg-drivers-1.12 [1.11] VIDEO_CARDS="-modesetting%" 
[ebuild   R    ] sys-apps/util-linux-2.20.1-r2  USE="static-libs*" 
[ebuild   R    ] dev-libs/popt-1.16-r1  USE="static-libs*" 
[ebuild   R    ] dev-libs/libgpg-error-1.10  USE="static-libs*" 
[ebuild     U  ] dev-libs/libatasmart-0.19 [0.18]
[ebuild  N    ~] dev-util/gdbus-codegen-2.32.3 
[ebuild     U ~] dev-libs/glib-2.32.3 [2.30.3] USE="-static-libs*" 
[ebuild     U  ] x11-proto/xproto-7.0.23-r1 [7.0.22]
[ebuild     U  ] x11-proto/xextproto-7.2.1 [7.2.0]
[ebuild     U  ] x11-proto/inputproto-2.2 [2.0.2]
[ebuild     U  ] x11-proto/kbproto-1.0.6 [1.0.5]
[ebuild     U  ] dev-libs/libgcrypt-1.5.0-r2 [1.4.6] USE="static-libs*" 
[ebuild     U  ] x11-libs/xtrans-1.2.7 [1.2.6]
[ebuild     U  ] x11-libs/pixman-0.26.0 [0.24.0] USE="-test%" 
[ebuild     U  ] x11-libs/libdrm-2.4.33 [2.4.27] VIDEO_CARDS="(-omap)" 
[ebuild     U  ] x11-proto/recordproto-1.14.2 [1.14.1]
[ebuild     U  ] x11-proto/scrnsaverproto-1.2.2 [1.2.1]
[ebuild     U  ] x11-libs/libpciaccess-0.13.1 [0.12.1]
[ebuild     U  ] x11-proto/fontsproto-2.1.2 [2.1.1]
[ebuild     U ~] dev-lang/spidermonkey-1.8.5-r1 [1.7.0] USE="-debug% -static-libs% -test%" 
[ebuild     U  ] x11-proto/bigreqsproto-1.1.2 [1.1.1]
[ebuild     U  ] x11-proto/xf86dgaproto-2.1-r1 [2.1]
[ebuild     U  ] x11-proto/xf86rushproto-1.1.2-r1 [1.1.2]
[ebuild     U  ] x11-proto/xcmiscproto-1.2.2 [1.2.1]
[ebuild     U  ] x11-libs/libICE-1.0.8 [1.0.7]
[ebuild     U  ] x11-libs/libXau-1.0.7 [1.0.6]
[ebuild     U  ] x11-libs/libXdmcp-1.1.1 [1.1.0]
[ebuild     U  ] x11-libs/libfontenc-1.1.1 [1.1.0]
[ebuild     U  ] x11-misc/makedepend-1.0.4 [1.0.3]
[ebuild  N     ] sys-fs/cryptsetup-1.4.1  USE="nls static (-selinux)" 
[ebuild     U  ] x11-libs/libSM-1.2.1 [1.2.0]
[ebuild     U  ] media-gfx/graphite2-1.1.3 [1.1.2]
[ebuild     U  ] x11-proto/xcb-proto-1.7.1 [1.6-r2]
[ebuild     U  ] x11-libs/libxcb-1.8.1 [1.7]
[ebuild     U  ] x11-libs/libX11-1.5.0 [1.4.4]
[ebuild     U  ] x11-libs/libXext-1.3.1 [1.3.0]
[ebuild     U  ] x11-libs/libXrender-0.9.7 [0.9.6]
[ebuild     U ~] media-libs/freetype-2.4.10 [2.4.9-r1]
[ebuild     U  ] x11-libs/libXt-1.1.3 [1.1.1]
[ebuild     U  ] x11-libs/libxkbfile-1.0.8 [1.0.7]
[ebuild     U  ] x11-apps/xmodmap-1.0.7 [1.0.5]
[ebuild     U  ] x11-libs/libXi-1.6.1 [1.4.3-r1]
[ebuild     U  ] x11-libs/libXinerama-1.1.2 [1.1.1]
[ebuild     U  ] x11-libs/libXcursor-1.1.13 [1.1.12]
[ebuild     U  ] x11-libs/libXmu-1.1.1 [1.1.0]
[ebuild     U  ] x11-libs/libXxf86vm-1.1.2 [1.1.1]
[ebuild     U  ] x11-libs/libXft-2.3.1 [2.3.0-r1]
[ebuild     U  ] x11-libs/libXv-1.0.7 [1.0.6]
[ebuild     U  ] x11-libs/libXres-1.0.6 [1.0.5]
[ebuild     U  ] x11-libs/libXpm-3.5.10 [3.5.9]
[ebuild     U  ] x11-libs/libXScrnSaver-1.2.2 [1.2.1]
[ebuild     U  ] x11-apps/mkfontscale-1.1.0 [1.0.9-r1]
[ebuild     U  ] x11-libs/libXfont-1.4.5 [1.4.4]
[ebuild     U  ] x11-libs/libXtst-1.2.1 [1.2.0]
[ebuild     U  ] x11-apps/xauth-1.0.7 [1.0.6]
[ebuild     U  ] x11-misc/xkeyboard-config-2.6 [2.4.1-r3]
[ebuild     U  ] x11-libs/libXaw-1.0.11 [1.0.9]
[ebuild     U  ] x11-apps/xev-1.2.0 [1.1.0]
[ebuild     U  ] x11-apps/xhost-1.0.5 [1.0.4]
[ebuild     U  ] x11-apps/mkfontdir-1.0.7 [1.0.6]
[ebuild     U  ] x11-apps/xinit-1.3.2 [1.3.1-r1]
[ebuild     U  ] x11-libs/xcb-util-0.3.9 [0.3.8]
[ebuild     U  ] x11-libs/xcb-util-wm-0.3.9 [0.3.8]
[ebuild     U  ] x11-libs/xcb-util-keysyms-0.3.9 [0.3.8]
[ebuild     U  ] x11-libs/xcb-util-image-0.3.9 [0.3.8]
[ebuild     U  ] x11-libs/libXvMC-1.0.7 [1.0.6]
[ebuild     U  ] app-admin/eselect-opengl-1.2.5-r1 [1.2.4]
[ebuild     U  ] x11-proto/glproto-1.4.15 [1.4.14-r1]
[ebuild     U  ] media-libs/mesa-8.0.3 [7.11.2] USE="-d3d% -g3dvl% -gles1% -gles2% -vdpau% (-wayland) -xa% -xvmc%" VIDEO_CARDS="-i915% -i965% -r100% -r200% -r300% -r600%" 
[ebuild     U  ] media-libs/libvisio-0.0.18 [0.0.17]
[ebuild     U  ] app-text/libwps-0.2.7 [0.2.6]
[ebuild     U  ] x11-base/xorg-server-1.12.2 [1.11.4-r1]
[ebuild     U  ] x11-drivers/xf86-input-evdev-2.7.0 [2.6.0]
[ebuild     U  ] x11-drivers/xf86-input-keyboard-1.6.1 [1.6.0]
[ebuild     U  ] x11-drivers/xf86-input-mouse-1.7.2 [1.7.1]
[ebuild     U  ] dev-java/ant-core-1.8.4-r1 [1.8.4]
[ebuild     U  ] app-misc/screen-4.0.3-r5 [4.0.3-r4]
[ebuild     U  ] app-crypt/gnupg-2.0.19 [2.0.17] USE="readline%* usb%*" 
[ebuild     U  ] app-admin/system-config-printer-common-1.3.9-r2 [1.3.9-r1]
[ebuild     U  ] media-libs/libao-1.1.0-r1 [1.0.0-r1]
[ebuild     U ~] sys-auth/polkit-0.106-r5 [0.104-r1]
[ebuild  NS   ~] sys-fs/udisks-1.98.0 [1.0.4-r2] USE="crypt gptfdisk introspection -debug -systemd" 
[ebuild     U ~] app-emulation/wine-1.5.7 [1.5.6] USE="pulseaudio%*"
Comment 6 Pacho Ramos gentoo-dev 2012-07-01 13:16:46 UTC
Please post "emerge -pv gnome-keyring" output and attach ~/.xsession-errors just after getting the failure
Comment 7 Julien Cabessut 2012-07-01 14:24:05 UTC
Created attachment 316875 [details]
~./xsession.errors
Comment 8 Julien Cabessut 2012-07-01 14:24:30 UTC
emerge -pv gnome-keyring

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R    ] gnome-base/gnome-keyring-2.32.1-r1  USE="debug pam -doc -test" 0 kB

Total: 1 package (1 reinstall), Size of downloads: 0 kB
Comment 9 Pacho Ramos gentoo-dev 2012-07-01 17:06:39 UTC
Can you try on a newly created user account with a new home?
Comment 10 Julien Cabessut 2012-07-01 17:16:39 UTC
Same problem with a newly created user with a clean /home.
Comment 11 Pacho Ramos gentoo-dev 2012-07-07 13:17:26 UTC
What is your dev-libs/libgcrypt version?
Comment 12 Julien Cabessut 2012-07-08 10:52:47 UTC
libgcrypt is 1.5.0-r2
Comment 13 Pacho Ramos gentoo-dev 2012-07-08 11:01:40 UTC
I don't understand why your kernel is breaking this, will CC kernel team
Comment 14 Anthony Garnier 2012-07-09 11:51:04 UTC
I have two computers, one desktop and one laptop that share make.conf and installed packages. The only difference between the two is the .config: the desktop uses a stock gentoo kernel config, while the laptop uses a stock ubuntu 12.04 kernel config. I get the gnome-keurong bug with the desktop, but on the laptop everything works fine. I'll try to compile the desktop kernel with ubuntu kernel config.
Comment 15 Pacho Ramos gentoo-dev 2012-07-26 18:46:46 UTC
*** Bug 426390 has been marked as a duplicate of this bug. ***
Comment 16 Pacho Ramos gentoo-dev 2012-07-26 18:47:16 UTC
kernel team, any idea?
Comment 17 Anthony Garnier 2012-08-08 07:53:35 UTC
Downgrade to :

dev-libs/libgcrypt
      Latest version available: 1.4.6
      Latest version installed: 1.4.6
      Size of files: 1,124 kB
      Homepage:      http://www.gnupg.org/
      Description:   General purpose crypto library based on the code used in GnuPG
      License:       LGPL-2.1

Solves the problem for me.

Something is wrong with libgcrypt-1.5.0-r2 but I dont have enough skill to find why.
Comment 18 Julien Cabessut 2012-08-22 08:18:02 UTC
Anthony's solution of downgrading libgcrypt does solve the problem.

Thank you !
Comment 19 Pacho Ramos gentoo-dev 2012-09-15 10:21:00 UTC
I have 1.5.0-r2 and doesn't suffer it :|
Comment 20 Gilles Dartiguelongue gentoo-dev 2013-02-01 19:38:28 UTC
Could you guys try with rebuilding libgcrypt with gcc-4.6 ?
Also could you check if building gnome-keyring with USE="-debug" changes anything ?
I'm adding crypto herd since general protection fault in libgcrypt is certainly not a good sign.

Finally to produce better backtrace we would need you guys to rebuild all reverse dependencies of these packages with FEATURES="splitdebug" and -g added to CFLAGS. That covers at least libgcrypt, gnome-keyring, libgnome-keyring and glib.

http://www.gentoo.org/proj/en/qa/backtraces.xml
Comment 21 Alon Bar-Lev gentoo-dev 2013-02-01 19:46:27 UTC
Just to make sure, can you please try libgcrypt-1.5.0-r4 as it contains fix for aes-ni.
Comment 22 Tom Wijsman (TomWij) (RETIRED) gentoo-dev 2013-02-01 20:57:07 UTC
(In reply to comment #16)
> kernel team, any idea?

Not me, although he is using =sys-kernel/gentoo-sources-3.2.12 so he could try newer versions like =sys-kernel/gentoo-sources-3.6.11 (gentoo stable), =sys-kernel/gentoo-sources-3.7.5 (upstream stable) and =sys-kernel/git-sources-3.8_rc6 (upstream mainline); maybe he has a kernel bug that has been fixed in the last 9 months.

g_spawn_sync is spawning a new process (http://developer.gimp.org/api/2.0/glib/glib-Spawning-Processes.html), waitpid_nocancel waits for that process to change state and then it ends up in the kernel, probably waiting in kernel_vsyscall for that state to change. There is however no information what is causing this process to get spawned. All we get beyond hat point is an unfortunate 0x0:

> #3  0x00000000 in ?? ()

I think that capturing the output of `strace -f /usr/libexec/gnome-keyring-prompt` might also yield some more information, it could be possible that parameters need to be passed to that function.
Comment 23 Pacho Ramos gentoo-dev 2013-08-26 16:53:02 UTC
Can you check with 3.8.x?
Comment 24 Julien Cabessut 2013-08-30 12:53:21 UTC
Hello,

The problem has disappeared with libgcrypt 1.5.3 and kernel 3.8.13, at least on my laptop.
Comment 25 Pacho Ramos gentoo-dev 2013-08-30 16:23:00 UTC
Will close for now, thanks for feedback