gdm-session-worker crashes on logout when pam_mount is enabled

Bug #574329 reported by mfn
78
This bug affects 14 people
Affects Status Importance Assigned to Milestone
libpam-mount (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

Binary package hint: libpam-mount

Description: Ubuntu 10.04 LTS
Release: 10.04

libpam-mount:
  Installiert: 1.32-2
  Kandidat: 1.32-2
  Versions-Tabelle:
 *** 1.32-2 0
        500 http://de.archive.ubuntu.com/ubuntu/ lucid/main Packages
        100 /var/lib/dpkg/status

I would expect a normal logout. Instead gnome crashes and only the background image and the mouse cursor remains.

-----SNIP-----
root@ws05:/var/log/gdm# cat :0-slave.log
gdm-simple-slave[5974]: WARNING: Unable to load file '/etc/gdm/custom.conf': No such file or directory
gdm-session-worker[6748]: WARNING: Unable to load file '/etc/gdm/custom.conf': No such file or directory
gdm-session-worker[6748]: GLib-GObject-CRITICAL: g_value_get_boolean: assertion `G_VALUE_HOLDS_BOOLEAN (value)' failed
gdm-session-worker[6748]: pam_succeed_if(gdm:auth): requirement "user ingroup nopasswdlogin" not met by user "USER"
gdm-session-worker[6748]: pam_unix(gdm:auth): authentication failure; logname= uid=0 euid=0 tty=:0 ruser= rhost= user=USER
gdm-session-worker[6748]: pam_unix(gdm:session): session opened for user USER by (uid=0)
gdm-session-worker[6748]: pam_ck_connector(gdm:session): nox11 mode, ignoring PAM_TTY :0
gdm-session-worker[6748]: pam_unix(gdm:session): session closed for user USER
pam_mount(mount.c:64): umount messages:
gdm-session-worker[6748]: pam_mount(mount.c:64): umount messages:
pam_mount(mount.c:68): umount.nfs: /home/USER: device is busy
gdm-session-worker[6748]: pam_mount(mount.c:68): umount.nfs: /home/USER: device is busy
pam_mount(mount.c:68): umount.nfs: /home/USER: device is busy
gdm-session-worker[6748]: pam_mount(mount.c:68): umount.nfs: /home/USER: device is busy
pam_mount(mount.c:698): unmount of /home/USER failed
gdm-session-worker[6748]: pam_mount(mount.c:698): unmount of /home/USER failed
*** glibc detected *** /usr/lib/gdm/gdm-session-worker: double free or corruption (out): 0x083e8a10 ***
======= Backtrace: =========
/lib/tls/i686/cmov/libc.so.6(+0x6b591)[0x3c9591]
/lib/tls/i686/cmov/libc.so.6(+0x6cde8)[0x3cade8]
/lib/tls/i686/cmov/libc.so.6(cfree+0x6d)[0x3cdecd]
/lib/libglib-2.0.so.0(g_free+0x36)[0x21efc6]
/lib/libglib-2.0.so.0(+0x2cdc8)[0x207dc8]
/lib/libglib-2.0.so.0(g_hash_table_remove_all+0x2d)[0x2082fd]
/lib/libglib-2.0.so.0(g_hash_table_destroy+0x2d)[0x2083ad]
/usr/lib/gdm/gdm-session-worker[0x804f03e]
/usr/lib/libgobject-2.0.so.0(g_object_unref+0x1d4)[0xaeb3f4]
/usr/lib/gdm/gdm-session-worker[0x804c8ea]
/lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xe6)[0x374bd6]
/usr/lib/gdm/gdm-session-worker[0x804c5e1]
======= Memory map: ========
00110000-0012c000 r-xp 00000000 08:01 2886653 /usr/lib/libdbus-glib-1.so.2.1.0
0012c000-0012d000 r--p 0001b000 08:01 2886653 /usr/lib/libdbus-glib-1.so.2.1.0
0012d000-0012e000 rw-p 0001c000 08:01 2886653 /usr/lib/libdbus-glib-1.so.2.1.0
0012e000-001c8000 r-xp 00000000 08:01 2886795 /usr/lib/libgio-2.0.so.0.2400.0
001c8000-001c9000 ---p 0009a000 08:01 2886795 /usr/lib/libgio-2.0.so.0.2400.0
001c9000-001ca000 r--p 0009a000 08:01 2886795 /usr/lib/libgio-2.0.so.0.2400.0
001ca000-001cb000 rw-p 0009b000 08:01 2886795 /usr/lib/libgio-2.0.so.0.2400.0
001cb000-001cc000 rw-p 00000000 00:00 0
001cc000-001d0000 r-xp 00000000 08:01 2886933 /usr/lib/libgthread-2.0.so.0.2400.0
001d0000-001d1000 r--p 00003000 08:01 2886933 /usr/lib/libgthread-2.0.so.0.2400.0
001d1000-001d2000 rw-p 00004000 08:01 2886933 /usr/lib/libgthread-2.0.so.0.2400.0
001d2000-001d9000 r-xp 00000000 08:01 4723043 /lib/tls/i686/cmov/librt-2.11.1.so
001d9000-001da000 r--p 00006000 08:01 4723043 /lib/tls/i686/cmov/librt-2.11.1.so
001da000-001db000 rw-p 00007000 08:01 4723043 /lib/tls/i686/cmov/librt-2.11.1.so
001db000-002a3000 r-xp 00000000 08:01 4718679 /lib/libglib-2.0.so.0.2400.0
002a3000-002a4000 r--p 000c7000 08:01 4718679 /lib/libglib-2.0.so.0.2400.0
002a4000-002a5000 rw-p 000c8000 08:01 4718679 /lib/libglib-2.0.so.0.2400.0
002a5000-002d4000 r-xp 00000000 08:01 4718733 /lib/libpcre.so.3.12.1
002d4000-002d5000 r--p 0002e000 08:01 4718733 /lib/libpcre.so.3.12.1
002d5000-002d6000 rw-p 0002f000 08:01 4718733 /lib/libpcre.so.3.12.1
002d6000-002e9000 r-xp 00000000 08:01 4718790 /lib/libz.so.1.2.3.3
002e9000-002ea000 r--p 00012000 08:01 4718790 /lib/libz.so.1.2.3.3
002ea000-002eb000 rw-p 00013000 08:01 4718790 /lib/libz.so.1.2.3.3
002eb000-002ef000 r-xp 00000000 08:01 2886453 /usr/lib/libXdmcp.so.6.0.0
002ef000-002f0000 r--p 00003000 08:01 2886453 /usr/lib/libXdmcp.so.6.0.0
002f0000-002f1000 rw-p 00004000 08:01 2886453 /usr/lib/libXdmcp.so.6.0.0
002f1000-0030e000 r-xp 00000000 08:01 4718675 /lib/libgcc_s.so.1
0030e000-0030f000 r--p 0001c000 08:01 4718675 /lib/libgcc_s.so.1
0030f000-00310000 rw-p 0001d000 08:01 4718675 /lib/libgcc_s.so.1
00359000-0035c000 r-xp 00000000 08:01 2886813 /usr/lib/libgmodule-2.0.so.0.2400.0
0035c000-0035d000 r--p 00002000 08:01 2886813 /usr/lib/libgmodule-2.0.so.0.2400.0
0035d000-0035e000 rw-p 00003000 08:01 2886813 /usr/lib/libgmodule-2.0.so.0.2400.0
0035e000-004b1000 r-xp 00000000 08:01 4723013 /lib/tls/i686/cmov/libc-2.11.1.so
004b1000-004b2000 ---p 00153000 08:01 4723013 /lib/tls/i686/cmov/libc-2.11.1.so
004b2000-004b4000 r--p 00153000 08:01 4723013 /lib/tls/i686/cmov/libc-2.11.1.so
004b4000-004b5000 rw-p 00155000 08:01 4723013 /lib/tls/i686/cmov/libc-2.11.1.so
004b5000-004b8000 rw-p 00000000 00:00 0
0056e000-005a5000 r-xp 00000000 08:01 4718653 /lib/libdbus-1.so.3.4.0
005a5000-005a6000 r--p 00036000 08:01 4718653 /lib/libdbus-1.so.3.4.0
005a6000-005a7000 rw-p 00037000 08:01 4718653 /lib/libdbus-1.so.3.4.0
005a8000-005a9000 r-xp 00000000 00:00 0 [vdso]
005cd000-005d5000 r-xp 00000000 08:01 4723034 /lib/tls/i686/cmov/libnss_nis-2.11.1.so
005d5000-005d6000 r--p 00007000 08:01 4723034 /lib/tls/i686/cmov/libnss_nis-2.11.1.so
005d6000-005d7000 rw-p 00008000 08:01 4723034 /lib/tls/i686/cmov/libnss_nis-2.11.1.so
00646000-00650000 r-xp 00000000 08:01 4723030 /lib/tls/i686/cmov/libnss_files-2.11.1.so
00650000-00651000 r--p 00009000 08:01 4723030 /lib/tls/i686/cmov/libnss_files-2.11.1.so
00651000-00652000 rw-p 0000a000 08:01 4723030 /lib/tls/i686/cmov/libnss_files-2.11.1.so
00652000-0065b000 r-xp 00000000 08:01 4718614 /lib/libnss_ldap.so.2
0065b000-0065c000 r--p 00009000 08:01 4718614 /lib/libnss_ldap.so.2
0065c000-0065d000 rw-p 0000a000 08:01 4718614 /lib/libnss_ldap.so.2
00708000-00721000 r-xp 00000000 08:01 4718757 /lib/libselinux.so.1
00721000-00722000 r--p 00018000 08:01 4718757 /lib/libselinux.so.1
00722000-00723000 rw-p 00019000 08:01 4718757 /lib/libselinux.so.1
00768000-00778000 r-xp 00000000 08:01 4723041 /lib/tls/i686/cmov/libresolv-2.11.1.so
00778000-00779000 r--p 00010000 08:01 4723041 /lib/tls/i686/cmov/libresolv-2.11.1.so
00779000-0077a000 rw-p 00011000 08:01 4723041 /lib/tls/i686/cmov/libresolv-2.11.1.so
0077a000-0077c000 rw-p 00000000 00:00 0
00798000-0079a000 r-xp 00000000 08:01 2886442 /usr/lib/libXau.so.6.0.0
0079a000-0079b000 r--p 00001000 08:01 2886442 /usr/lib/libXau.so.6.0.0
0079b000-0079c000 rw-p 00002000 08:01 2886442 /usr/lib/libXau.so.6.0.0
0079c000-007a2000 r-xp 00000000 08:01 4723026 /lib/tls/i686/cmov/libnss_compat-2.11.1.so
007a2000-007a3000 r--p 00006000 08:01 4723026 /lib/tls/i686/cmov/libnss_compat-2.11.1.so
007a3000-007a4000 rw-p 00007000 08:01 4723026 /lib/tls/i686/cmov/libnss_compat-2.11.1.so
0082b000-00834000 r-xp 00000000 08:01 4723017 /lib/tls/i686/cmov/libcrypt-2.11.1.so
00834000-00835000 r--p 00008000 08:01 4723017 /lib/tls/i686/cmov/libcrypt-2.11.1.so
00835000-00836000 rw-p 00009000 08:01 4723017 /lib/tls/i686/cmov/libcrypt-2.11.1.so
00836000-0085d000 rw-p 00000000 00:00 0
008a7000-008c3000 r-xp 00000000 08:01 2887225 /usr/lib/libpolkit-gobject-1.so.0.0.0
008c3000-008c4000 r--p 0001b000 08:01 2887225 /usr/lib/libpolkit-gobject-1.so.0.0.0
008c4000-008c5000 rw-p 0001c000 08:01 2887225 /usr/lib/libpolkit-gobject-1.so.0.0.0
008da000-008ef000 r-xp 00000000 08:01 4723039 /lib/tls/i686/cmov/libpthread-2.11.1.so
008ef000-008f0000 r--p 00014000 08:01 4723039 /lib/tls/i686/cmov/libpthread-2.11.1.so
008f0000-008f1000 rw-p 00015000 08:01 4723039 /lib/tls/i686/cmov/libpthread-2.11.1.so
008f1000-008f3000 rw-p 00000000 00:00 0
00ade000-00b1b000 r-xp 00000000 08:01 2886849 /usr/lib/libgobject-2.0.so.0.2400.0
00b1b000-00b1c000 r--p 0003c000 08:01 2886849 /usr/lib/libgobject-2.0.so.0.2400.0
00b1c000-00b1d000 rw-p 0003d000 08:01 2886849 /usr/lib/libgobject-2.0.so.0.2400.0
00b98000-00bb0000 r-xp 00000000 08:01 2887449 /usr/lib/libxcb.so.1.1.0
00bb0000-00bb1000 r--p 00017000 08:01 2887449 /usr/lib/libxcb.so.1.1.0
00bb1000-00bb2000 rw-p 00018000 08:01 2887449 /usr/lib/libxcb.so.1.1.0
00bd5000-00bd7000 r-xp 00000000 08:01 4723019 /lib/tls/i686/cmov/libdl-2.11.1.so
00bd7000-00bd8000 r--p 00001000 08:01 4723019 /lib/tls/i686/cmov/libdl-2.11.1.so
00bd8000-00bd9000 rw-p 00002000 08:01 4723019 /lib/tls/i686/cmov/libdl-2.11.1.so
00bdf000-00bfa000 r-xp 00000000 08:01 4718617 /lib/ld-2.11.1.so
00bfa000-00bfb000 r--p 0001a000 08:01 4718617 /lib/ld-2.11.1.so
00bfb000-00bfc000 rw-p 0001b000 08:01 4718617 /lib/ld-2.11.1.so
00c4d000-00d66000 r-xp 00000000 08:01 2886438 /usr/lib/libX11.so.6.3.0
00d66000-00d67000 r--p 00118000 08:01 2886438 /usr/lib/libX11.so.6.3.0
00d67000-00d69000 rw-p 00119000 08:01 2886438 /usr/lib/libX11.so.6.3.0
00d69000-00d6a000 rw-p 00000000 00:00 0
00d8c000-00d97000 r-xp 00000000 08:01 4718724 /lib/libpam.so.0.82.2
00d97000-00d98000 r--p 0000a000 08:01 4718724 /lib/libpam.so.0.82.2
00d98000-00d99000 rw-p 0000b000 08:01 4718724 /lib/libpam.so.0.82.2
00e04000-00e17000 r-xp 00000000 08:01 4723024 /lib/tls/i686/cmov/libnsl-2.11.1.so
00e17000-00e18000 r--p 00012000 08:01 4723024 /lib/tls/i686/cmov/libnsl-2.11.1.so
00e18000-00e19000 rw-p 00013000 08:01 4723024 /lib/tls/i686/cmov/libnsl-2.11.1.so
00e19000-00e1b000 rw-p 00000000 00:00 0
00f74000-00faf000 r-xp 00000000 08:01 2886702 /usr/lib/libeggdbus-1.so.0.0.0
00faf000-00fb0000 ---p 0003b000 08:01 2886702 /usr/lib/libeggdbus-1.so.0.0.0
00fb0000-00fb1000 r--p 0003b000 08:01 2886702 /usr/lib/libeggdbus-1.so.0.0.0
00fb1000-00fb2000 rw-p 0003c000 08:01 2886702 /usr/lib/libeggdbus-1.so.0.0.0
08048000-0805d000 r-xp 00000000 08:01 2890229 /usr/lib/gdm/gdm-session-worker
0805d000-0805e000 r--p 00014000 08:01 2890229 /usr/lib/gdm/gdm-session-worker
0805e000-0805f000 rw-p 00015000 08:01 2890229 /usr/lib/gdm/gdm-session-worker
083ad000-0840b000 rw-p 00000000 00:00 0 [heap]
b6a00000-b6a21000 rw-p 00000000 00:00 0
b6a21000-b6b00000 ---p 00000000 00:00 0
b6be1000-b6be2000 ---p 00000000 00:00 0
b6be2000-b75e2000 rw-p 00000000 00:00 0
b75e2000-b75e5000 r--p 00000000 08:01 3181672 /usr/share/locale-langpack/de/LC_MESSAGES/Linux-PAM.mo
b75e5000-b761a000 r--s 00000000 08:01 24124337 /var/cache/nscd/group
b761a000-b764f000 r--s 00000000 08:01 24124336 /var/cache/nscd/passwd
b764f000-b765b000 r--p 00000000 08:01 3181774 /usr/share/locale-langpack/de/LC_MESSAGES/glib20.mo
b765b000-b7662000 r--p 00000000 08:01 3181760 /usr/share/locale-langpack/de/LC_MESSAGES/gdm.mo
b7662000-b76a1000 r--p 00000000 08:01 2891323 /usr/lib/locale/de_DE.utf8/LC_CTYPE
b76a1000-b76a2000 r--p 00000000 08:01 2891341 /usr/lib/locale/de_DE.utf8/LC_NUMERIC
b76a2000-b76a3000 r--p 00000000 08:01 2894109 /usr/lib/locale/de_DE.utf8/LC_TIME
b76a3000-b77c1000 r--p 00000000 08:01 2894110 /usr/lib/locale/de_DE.utf8/LC_COLLATE
b77c1000-b77c2000 r--p 00000000 08:01 2891898 /usr/lib/locale/de_DE.utf8/LC_MONETARY
b77c2000-b77c9000 rw-p 00000000 00:00 0
b77c9000-b77ca000 r--p 00000000 08:01 2891332 /usr/lib/locale/de_DE.utf8/LC_MESSAGES/SYS_LC_MESSAGES
b77ca000-b77cb000 r--p 00000000 08:01 2891433 /usr/lib/locale/de_DE.utf8/LC_PAPER
b77cb000-b77cc000 r--p 00000000 08:01 2894111 /usr/lib/locale/de_DE.utf8/LC_NAME
b77cc000-b77cd000 r--p 00000000 08:01 2894112 /usr/lib/locale/de_DE.utf8/LC_ADDRESS
b77cd000-b77ce000 r--p 00000000 08:01 2894113 /usr/lib/locale/de_DE.utf8/LC_TELEPHONE
b77ce000-b77cf000 r--p 00000000 08:01 2891806 /usr/lib/locale/de_DE.utf8/LC_MEASUREMENT
b77cf000-b77d6000 r--s 00000000 08:01 2890218 /usr/lib/gconv/gconv-modules.cache
b77d6000-b77d7000 r--p 00000000 08:01 2894114 /usr/lib/locale/de_DE.utf8/LC_IDENTIFICATION
b77d7000-b77d9000 rw-p 00000000 00:00 0
bfde4000-bfdf9000 rw-p 00000000 00:00 0 [stack]

Revision history for this message
fedsed (fedor-s) wrote :

I have created a file/etc/gdm/custom.conf with such contents and at me have ceased to crash gdm.

custom.conf:
[daemon]

[security]

[xdmcp]

[gui]

[greeter]
IncludeAll=false

[chooser]

[debug]

[servers]

Revision history for this message
mfn (mfn) wrote :

Are you using pam_mount?

When I mount all homes at once via the fstab file, everything works.

But with pam_mount gdm-session-worker crashes.

Revision history for this message
fedsed (fedor-s) wrote :

Yes I use pam_mount.
Without a file custom.conf I too had a crashes.

Revision history for this message
mfn (mfn) wrote :

When I create the file with the contents, gdm-session-worker is still crashing. Only the to warning lines are gone.

Revision history for this message
fedsed (fedor-s) wrote :
Download full text (14.3 KiB)

There was again a crashes :(
:0-slave.log
gdm-session-worker[19214]: GLib-GObject-CRITICAL: g_value_get_boolean: assertion `G_VALUE_HOLDS_BOOLEAN (value)' failed
gdm-session-worker[19214]: pam_unix(gdm:auth): authentication failure; logname= uid=0 euid=0 tty=:0 ruser= rhost= user=user1
gdm-session-worker[19214]: Libgcrypt warning: missing initialization - please fix the application
gdm-session-worker[19214]: pam_unix(gdm:session): session opened for user user1 by (uid=0)
gdm-session-worker[19214]: pam_unix(gdm:session): session closed for user user1
*** glibc detected *** /usr/lib/gdm/gdm-session-worker: corrupted double-linked list: 0x0811a978 ***
======= Backtrace: =========
/lib/tls/i686/cmov/libc.so.6(+0x6b591)[0x4f4591]
/lib/tls/i686/cmov/libc.so.6(+0x6b9ce)[0x4f49ce]
/lib/tls/i686/cmov/libc.so.6(+0x6dafd)[0x4f6afd]
/lib/tls/i686/cmov/libc.so.6(__libc_malloc+0x5c)[0x4f8f9c]
/usr/lib/liblber-2.4.so.2(ber_memalloc_x+0x37)[0x2d79d7]
/usr/lib/liblber-2.4.so.2(ber_memrealloc_x+0x84)[0x2d8424]
/usr/lib/liblber-2.4.so.2(ber_realloc+0x9d)[0x2d6dad]
/usr/lib/liblber-2.4.so.2(+0x401e)[0x2d501e]
/usr/lib/liblber-2.4.so.2(ber_printf+0x23f)[0x2d583f]
/usr/lib/libldap_r-2.4.so.2(ldap_send_unbind+0x87)[0x5fe4f7]
/usr/lib/libldap_r-2.4.so.2(ldap_free_connection+0x34f)[0x60887f]
/usr/lib/libldap_r-2.4.so.2(ldap_ld_free+0x70)[0x5fe6b0]
/usr/lib/libldap_r-2.4.so.2(ldap_unbind_ext+0x56)[0x5fe996]
/usr/lib/libldap_r-2.4.so.2(ldap_unbind+0x6f)[0x5feaaf]
/lib/libnss_ldap.so.2(+0x3304)[0x6b0304]
/lib/tls/i686/cmov/libc.so.6(+0x2f1bf)[0x4b81bf]
/lib/tls/i686/cmov/libc.so.6(+0x2f22f)[0x4b822f]
/lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xee)[0x49fbde]
/usr/lib/gdm/gdm-session-worker[0x804c5e1]
======= Memory map: ========
00110000-00113000 r-xp 00000000 08:01 1592976 /usr/lib/libgmodule-2.0.so.0.2400.0
00113000-00114000 r--p 00002000 08:01 1592976 /usr/lib/libgmodule-2.0.so.0.2400.0
00114000-00115000 rw-p 00003000 08:01 1592976 /usr/lib/libgmodule-2.0.so.0.2400.0
00115000-001dd000 r-xp 00000000 08:01 2007229 /lib/libglib-2.0.so.0.2400.0
001dd000-001de000 r--p 000c7000 08:01 2007229 /lib/libglib-2.0.so.0.2400.0
001de000-001df000 rw-p 000c8000 08:01 2007229 /lib/libglib-2.0.so.0.2400.0
001df000-001f7000 r-xp 00000000 08:01 5144671 /usr/lib/libxcb.so.1.1.0
001f7000-001f8000 r--p 00017000 08:01 5144671 /usr/lib/libxcb.so.1.1.0
001f8000-001f9000 rw-p 00018000 08:01 5144671 /usr/lib/libxcb.so.1.1.0
001f9000-00202000 r-xp 00000000 08:01 2008562 /lib/tls/i686/cmov/libcrypt-2.11.1.so
00202000-00203000 r--p 00008000 08:01 2008562 /lib/tls/i686/cmov/libcrypt-2.11.1.so
00203000-00204000 rw-p 00009000 08:01 2008562 /lib/tls/i686/cmov/libcrypt-2.11.1.so
00204000-0022b000 rw-p 00000000 00:00 0
0022b000-00266000 r-xp 00000000 08:01 1593399 /usr/lib/libeggdbus-1.so.0.0.0
00266000-00267000 ---p 0003b000 08:01 1593399 /usr/lib/libeggdbus-1.so.0.0.0
00267000-00268000 r--p 0003b000 08:01 1593399 /usr/lib/libeggdbus-1.so.0.0.0
00268000-00269000 rw-p 0003c000 08:01 1593399 /usr/lib/libeggdbus-1.so.0.0.0
00269000-00298000 r-xp 00000000 08:01 2007196 /lib/libpcre.so.3.12.1
00298000-00299000 r--p 0002e000 08:01 2007196 /lib/libpc...

Revision history for this message
fedsed (fedor-s) wrote :

As a temporary variant.
To add in a file /etc/gdm/PostSession/Default

#!/bin/sh
pid=`ps ax | grep gdm-session-worker | grep -v grep | awk '{print $1}'`
kill -9 $pid
exit 0

mfn (mfn)
Changed in libpam-mount (Ubuntu):
status: New → Confirmed
Revision history for this message
tomlohave (tomlohave) wrote :

For me , bug solved with the same file custom.conf from fedsed

Revision history for this message
AZ (m-dev) wrote :

Adding custom.conf does not help it for me. I recompiled gdm with nostrip option and got this backtrace when logging out.

Program received signal SIGTERM, Terminated.
0x00aed422 in __kernel_vsyscall ()
(gdb) bt
#0 0x00aed422 in __kernel_vsyscall ()
#1 0x004beb86 in poll () from /lib/tls/i686/cmov/libc.so.6
#2 0x0099d13b in ?? () from /lib/libdbus-1.so.3
#3 0x009950ef in ?? () from /lib/libdbus-1.so.3
#4 0x009932cc in ?? () from /lib/libdbus-1.so.3
#5 0x0097dba3 in ?? () from /lib/libdbus-1.so.3
#6 0x00980224 in ?? () from /lib/libdbus-1.so.3
#7 0x0098da51 in dbus_pending_call_block () from /lib/libdbus-1.so.3
#8 0x0097f7cc in dbus_connection_send_with_reply_and_block () from /lib/libdbus-1.so.3
#9 0x0804cc21 in ck_connector_close_session (connector=0x8392ff8, error=0x0) at ck-connector.c:643
#10 0x080516a7 in session_worker_child_watch (pid=1745, status=0, worker=0x8372800) at gdm-session-worker.c:1838
#11 0x0015d6c2 in g_child_watch_dispatch (source=0x838bdb8, callback=0xfffffdfc, user_data=0x8372800) at /build/buildd/glib2.0-2.24.1/glib/gmain.c:3774
#12 0x0015f5e5 in g_main_dispatch (context=0x83708a0) at /build/buildd/glib2.0-2.24.1/glib/gmain.c:1960
#13 IA__g_main_context_dispatch (context=0x83708a0) at /build/buildd/glib2.0-2.24.1/glib/gmain.c:2513
#14 0x001632d8 in g_main_context_iterate (context=0x83708a0, block=<value optimized out>, dispatch=1, self=0x8364de8)
    at /build/buildd/glib2.0-2.24.1/glib/gmain.c:2591
#15 0x00163817 in IA__g_main_loop_run (loop=0x83717e0) at /build/buildd/glib2.0-2.24.1/glib/gmain.c:2799
#16 0x0804c8de in main (argc=1, argv=0xbfa967b4) at session-worker-main.c:201
(gdb) cont
Continuing.

Program received signal SIGABRT, Aborted.
0x00aed422 in __kernel_vsyscall ()
(gdb) bt
#0 0x00aed422 in __kernel_vsyscall ()
#1 0x00429651 in raise () from /lib/tls/i686/cmov/libc.so.6
#2 0x0042ca82 in abort () from /lib/tls/i686/cmov/libc.so.6
#3 0x0046049d in ?? () from /lib/tls/i686/cmov/libc.so.6
#4 0x0046a591 in ?? () from /lib/tls/i686/cmov/libc.so.6
#5 0x0046bde8 in ?? () from /lib/tls/i686/cmov/libc.so.6
#6 0x0046eecd in free () from /lib/tls/i686/cmov/libc.so.6
#7 0x00167fc6 in IA__g_free (mem=0x0) at /build/buildd/glib2.0-2.24.1/glib/gmem.c:191
#8 0x00150dc8 in g_hash_table_remove_all_nodes (hash_table=<value optimized out>, notify=<value optimized out>)
    at /build/buildd/glib2.0-2.24.1/glib/ghash.c:488
#9 0x001512fd in IA__g_hash_table_remove_all (hash_table=0x8366d80) at /build/buildd/glib2.0-2.24.1/glib/ghash.c:1166
#10 0x001513ad in IA__g_hash_table_destroy (hash_table=0x8366d80) at /build/buildd/glib2.0-2.24.1/glib/ghash.c:873
#11 0x0804f03e in gdm_session_worker_finalize (object=0x8372800) at gdm-session-worker.c:3016
#12 0x002493f4 in IA__g_object_unref (_object=0x8372800) at /build/buildd/glib2.0-2.24.1/gobject/gobject.c:2484
#13 0x0804c8ea in main (argc=1, argv=0xbfa967b4) at session-worker-main.c:204

Revision history for this message
AZ (m-dev) wrote :

One of the many automatic backtraces and gdb attachments show a backtrace haning in libpam-mount / pam_end.
Digging deeper I rebuild pam-mount with DEB_BUILD_OPTIONS=nostrip. The bug then could no longer be reproduced. I then rebuild libpam-mount without any DEB_BUILD_OPTIONS and the bug also no longer could be reproduced. Diffing pam_mount.so from the official package and my rebuild one, diff says that there are differences.

I used the following commands to rebuild
 > sudo apt-get build-dep libpam-mount
 > apt-get source libpam-mount
 > cd libpam-mount-1.32
 > sudo dpkg-buildpackage -b
 > dpkg -i ../libpam-mount*.deb
.

Could it be that some dependencies of libpam-mount were updated which gcc inlined (as O=s is used) and therefore a rebuild of libpam-mount is required?

Package: libpam-mount
Priority: extra
Section: admin
Installed-Size: 424
Maintainer: Ubuntu Developers <email address hidden>
Original-Maintainer: Bastian Kleineidam <email address hidden>
Architecture: i386
Version: 1.32-2
Depends: libc6 (>= 2.7), libhx22, libpam0g (>= 0.99.7.1), libssl0.9.8 (>= 0.9.8k-1), libxml2 (>= 2.7.4), mount (>= 2.12-3), libpam-runtime (>= 1.0.1-6)
Suggests: ncpfs, smbfs, cryptsetup, openssl, fuse-utils, davfs2, lsof, psmisc, xfsprogs, sshfs, truecrypt | truecrypt-utils
Conflicts: libncp (<< 2.2.0.19.10)
Filename: pool/main/libp/libpam-mount/libpam-mount_1.32-2_i386.deb
Size: 123276
MD5sum: 16742b379b4e332e93b862e3b63c7fd4
SHA1: 72df5ddf0da50bafe68f5ce6fc13af3c1c0ffafb
SHA256: 8591e7e5d08af03722e58656177b7b6eb1a34d367d866e5aca8df607bbd363a6
Description: PAM module that can mount volumes for a user session
 This module is aimed at environments with central file servers that a
 user wishes to mount on login and unmount on logout, such as
 (semi-)diskless stations where many users can logon.
 .
 The module also supports mounting local filesystems of any kind the
 normal mount utility supports, with extra code to make sure certain
 volumes are set up properly because often they need more than just a
 mount call, such as encrypted volumes. This includes SMB/CIFS, FUSE,
 dm-crypt and LUKS.
Homepage: http://pam-mount.sourceforge.net/
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Origin: Ubuntu
Supported: 5y

Revision history for this message
AZ (m-dev) wrote :

Hm it only helped yesterday, now I get a different backtrace haning again. It looks like there is a glibc doublefree that raises SIGABRT, which tries to fork but hangs to do so. I'm a bit uncertain what could make a fork to actually hang? Besides that it is weird that there is a double free.
This backtrace occured after a plain restart so nothing should be garbled.

Revision history for this message
fedsed (fedor-s) wrote :

Too package reassemblage has not helped me.

Revision history for this message
Mike G (mikee99) wrote :

I, am experiencing this same exact issue. I believe the problem lies in the fact that the volume is having difficulty unmounting.

The logs above also indicate that with the error: "pam_mount(mount.c:68): umount.nfs: /home/USER: device is busy".

I am experiencing the same problem, only with CIFS. Somehow, pam_mount is not able to successfully unmount the share since some process is doing something.

Is there a way to force pam_mount to kill processes preventing logout?

**For me, this is a very high-severity, showstopping issue. I cannot roll out Ubuntu 10.04 to my development environment with this occurring.

Revision history for this message
Guimenez (guimenez) wrote :

The same happens here :(

Ubuntu 10.04 LTS crash at logoff, the problem is the pam_mount mount the shares as root and when it unmount, it do as normal user.

please how can we fix this?

Revision history for this message
fedsed (fedor-s) wrote :

Has solved a problem as follows.
I took following sources packages from ubuntu 10.10:
cryptsetup, libhx, libpam-mount.
Has rebuild them by means of a command: "dpkg-buildpackage -b"
Has received following packages:
cryptsetup_1.1.2-1ubuntu1_i386.deb
cryptsetup-udeb_1.1.2-1ubuntu1_i386.udeb
libcryptsetup1_1.1.2-1ubuntu1_i386.deb
libcryptsetup-dev_1.1.2-1ubuntu1_i386.deb
libhx22_3.4-1ubuntu1_i386.deb
libhx-dev_3.4-1ubuntu1_i386.deb
libcryptsetup1_1.1.2-1ubuntu1_i386.deb
libpam-mount_2.3-1_i386.deb

Installed: dpkg -i libcryptsetup1_1.1.2-1ubuntu1_i386.deb libhx22_3.4-1ubuntu1_i386.deb libcryptsetup1_1.1.2-1ubuntu1_i386.deb libpam-mount_2.3-1_i386.deb

The problem was gone.

Revision history for this message
fedsed (fedor-s) wrote :
Revision history for this message
fedsed (fedor-s) wrote :
Revision history for this message
Markus Rupprecht (rupprecht3) wrote :

Problem with libhx22:

dpkg: Fehler beim Bearbeiten von libhx22_3.4-1ubuntu1_i386.deb (--install):
 nicht vollständig gelesen in buffer_copy (Backend dpkg-deb während »./usr/lib/libHX.so.22.3.0«)

In English: Error while working on libhx22_3.4-1ubuntu1_i386.deb (--install):
read not completed in buffer_copy (Backend dpkg-deb while »./usr/lib/libHX.so.22.3.0«)

Revision history for this message
fedsed (fedor-s) wrote :

It is visible a bad file

Revision history for this message
Kristopher Phillips (kris-d-phillips) wrote :

Why is this fix not being pushed out to the main repo's so that we can implement the fix more widespread. I had to go through and image an entire library worth of machines with this pre-rolled up because gdm crashes all the time when we use pam_mount. Thanks fedsed for the fixes. I keep this page bookmarked in the event that I need to make a new image of 10.04.

Revision history for this message
arod (arod0405) wrote :

Well... thanks, it works!
Just one question: is recompiling really mandatory? Couldn't I use plain maverick packages in ubuntu LTS?

TM (napolas)
Changed in libpam-mount (Ubuntu):
status: Confirmed → 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.