Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 811093 - sys-apps/systemd-249.2 gnome-extra/cinnamon-screensaver-4.8.1 segfault in pam_systemd_home.so when trying to unlock from screensaver
Summary: sys-apps/systemd-249.2 gnome-extra/cinnamon-screensaver-4.8.1 segfault in pam...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: Normal major (vote)
Assignee: Gentoo systemd Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-08-30 07:59 UTC by Garry Filakhtov
Modified: 2021-09-08 18:29 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
stack trace (crashdump.txt,15.18 KB, text/plain)
2021-08-31 06:54 UTC, Garry Filakhtov
Details
coredump (coredump.txt,10.81 KB, text/plain)
2021-09-04 03:16 UTC, Garry Filakhtov
Details
gdb backtrace (gdb-bt.txt,1.38 KB, text/plain)
2021-09-04 03:17 UTC, Garry Filakhtov
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Garry Filakhtov 2021-08-30 07:59:13 UTC
Using cinnamon with cinnamon-screensaver 4.8.1. Upgraded to sys-apps/systemd-249.2 today and am unable to bypass screensaver lockscreen any longer - entering the password results in indefinite loading animation that can be interrupted by pressing any key. Digging into logs revealed:

Aug 30 17:39:36 heliodor systemd-coredump[11685]: [🡕] Process 11649 (cinnamon-screen) of user 60466 dumped core.
                                                  
                                                  Found module linux-vdso.so.1 with build-id: 50d36783038b34424def76a5d57e31c528f09e28
                                                  Found module pam_deny.so without build-id.
                                                  Found module pam_limits.so without build-id.
                                                  ....snip...
                                                  Found module libgio-2.0.so.0 without build-id.
                                                  Found module libgtk-3.so.0 without build-id.
                                                  Found module libcscreensaver.so.0 without build-id.
                                                  Found module cinnamon-screensaver-pam-helper without build-id.
                                                  Stack trace of thread 11677:
                                                  #0  0x00007f2f90b83881 raise (libc.so.6 + 0x38881)
                                                  #1  0x00007f2f90b6d2b6 abort (libc.so.6 + 0x222b6)
                                                  #2  0x00007f2f8c13e7d5 n/a (pam_systemd_home.so + 0xb7d5)
                                                  #3  0x00007f2f8c13f69f n/a (pam_systemd_home.so + 0xc69f)
                                                  #4  0x00007f2f8c13ff3c n/a (pam_systemd_home.so + 0xcf3c)
                                                  #5  0x00007f2f8c140c24 pam_sm_acct_mgmt (pam_systemd_home.so + 0xdc24)
                                                  #6  0x00007f2f909233cd n/a (libpam.so.0 + 0x33cd)
                                                  #7  0x00007f2f9182dcfe n/a (libcscreensaver.so.0 + 0x25cfe)
                                                  #8  0x00007f2f90d48f1d n/a (libglib-2.0.so.0 + 0x7ef1d)
                                                  #9  0x00007f2f90907e5e start_thread (libpthread.so.0 + 0x7e5e)
                                                  #10 0x00007f2f90c3a14f __clone (libc.so.6 + 0xef14f)
                                                  
                                                  Stack trace of thread 11676:
                                                  #0  0x00007f2f90c2cd7c __read (libc.so.6 + 0xe1d7c)
                                                  #1  0x00007f2f90bc95f4 _IO_file_underflow (libc.so.6 + 0x7e5f4)
                                                  #2  0x00007f2f90bca8b2 _IO_default_uflow (libc.so.6 + 0x7f8b2)
                                                  #3  0x00007f2f90bbd6a6 _IO_getline_info (libc.so.6 + 0x726a6)
                                                  #4  0x00007f2f90bbc605 _IO_fgets (libc.so.6 + 0x71605)
                                                  #5  0x000055e5c1b83964 n/a (cinnamon-screensaver-pam-helper + 0x1964)
                                                  #6  0x00007f2f90f096de n/a (libgio-2.0.so.0 + 0xae6de)
                                                  #7  0x00007f2f90d49834 n/a (libglib-2.0.so.0 + 0x7f834)
                                                  #8  0x00007f2f90d48f1d n/a (libglib-2.0.so.0 + 0x7ef1d)
                                                  #9  0x00007f2f90907e5e start_thread (libpthread.so.0 + 0x7e5e)
                                                  #10 0x00007f2f90c3a14f __clone (libc.so.6 + 0xef14f)
                                                  
                                                  Stack trace of thread 11649:
                                                  #0  0x00007f2f90c3112f __poll (libc.so.6 + 0xe612f)
                                                  #1  0x00007f2f90d1e36e n/a (libglib-2.0.so.0 + 0x5436e)
                                                  #2  0x00007f2f90d1e6d3 g_main_loop_run (libglib-2.0.so.0 + 0x546d3)
                                                  #3  0x00007f2f91288a9d gtk_main (libgtk-3.so.0 + 0x253a9d)
                                                  #4  0x00007f2f9182e07e cs_auth_verify_user (libcscreensaver.so.0 + 0x2607e)
                                                  #5  0x000055e5c1b83d49 n/a (cinnamon-screensaver-pam-helper + 0x1d49)
                                                  #6  0x00007f2f90d1e028 g_main_context_dispatch (libglib-2.0.so.0 + 0x54028)
                                                  #7  0x00007f2f90d1e3d8 n/a (libglib-2.0.so.0 + 0x543d8)
                                                  #8  0x00007f2f90d1e6d3 g_main_loop_run (libglib-2.0.so.0 + 0x546d3)
                                                  #9  0x00007f2f91288a9d gtk_main (libgtk-3.so.0 + 0x253a9d)
                                                  #10 0x000055e5c1b836a5 n/a (cinnamon-screensaver-pam-helper + 0x16a5)
                                                  #11 0x00007f2f90b6e57d __libc_start_main (libc.so.6 + 0x2357d)
                                                  #12 0x000055e5c1b8379a n/a (cinnamon-screensaver-pam-helper + 0x179a)
                                                  
                                                  Stack trace of thread 11654:
                                                  #0  0x00007f2f90c3112f __poll (libc.so.6 + 0xe612f)
                                                  #1  0x00007f2f90d1e36e n/a (libglib-2.0.so.0 + 0x5436e)
                                                  #2  0x00007f2f90d1e48f g_main_context_iteration (libglib-2.0.so.0 + 0x5448f)
                                                  #3  0x00007f2f90d1e4e1 n/a (libglib-2.0.so.0 + 0x544e1)
                                                  #4  0x00007f2f90d48f1d n/a (libglib-2.0.so.0 + 0x7ef1d)
                                                  #5  0x00007f2f90907e5e start_thread (libpthread.so.0 + 0x7e5e)
                                                  #6  0x00007f2f90c3a14f __clone (libc.so.6 + 0xef14f)
                                                  
                                                  Stack trace of thread 11657:
                                                  #0  0x00007f2f90c3112f __poll (libc.so.6 + 0xe612f)
                                                  #1  0x00007f2f90d1e36e n/a (libglib-2.0.so.0 + 0x5436e)
                                                  #2  0x00007f2f90d1e6d3 g_main_loop_run (libglib-2.0.so.0 + 0x546d3)
                                                  #3  0x00007f2f90f72566 n/a (libgio-2.0.so.0 + 0x117566)
                                                  #4  0x00007f2f90d48f1d n/a (libglib-2.0.so.0 + 0x7ef1d)
                                                  #5  0x00007f2f90907e5e start_thread (libpthread.so.0 + 0x7e5e)
                                                  #6  0x00007f2f90c3a14f __clone (libc.so.6 + 0xef14f)

Crash is produced by the cinnamon-screensaver-pam-helper and happens in the pam_systemd_home.so. I will need to build systemd with debug symbols and source to pin point the location which I will do as time permits. I am not sure if cinnamon-screensaver is at fault, I have a feeling it's systemd.

Reproducible: Always

Steps to Reproduce:
1. Install gnome-extra/cinnamon-4.8.6, gnome-extra/cinnamon-screensaver-4.8.1, sys-apps/systemd-249.2
2. Use homectl to create an unprivileged user (I am using simple directory structure)
3. Log in as the user create above
4. Lock the screen (using the menu "Lock Screen" or simply Ctrl+Alt+L)
5. Try to unlock the screen
Actual Results:  
System stays locked

Expected Results:  
System unlocks properly

To unlock one can use "switch user" option in the screensaver menu and log back in from the desktop manager. I use LightDM (x11-misc/lightdm-1.30.0-r2) if that's important.
Comment 1 Mike Gilbert gentoo-dev 2021-08-31 01:00:27 UTC
The stack trace is unreadable. Please attach it as a text file instead.
Comment 2 Garry Filakhtov 2021-08-31 06:54:40 UTC
Created attachment 736873 [details]
stack trace

Sorry, was short on time yesterday. Attaching as a txt now.
Comment 3 Mike Gilbert gentoo-dev 2021-08-31 23:07:15 UTC
Please rebuild with debug symbols for a more useful stack trace.
Comment 4 Garry Filakhtov 2021-09-04 03:16:41 UTC
Created attachment 737341 [details]
coredump

core dump output with debugging symbols
Comment 5 Garry Filakhtov 2021-09-04 03:17:08 UTC
Created attachment 737344 [details]
gdb backtrace

gdb bt output with debugging symbols from systemd
Comment 6 Mike Gilbert gentoo-dev 2021-09-04 16:45:16 UTC
Thanks! Please create an issue upstream and include your backtrace.
Comment 7 Mike Gilbert gentoo-dev 2021-09-04 16:48:48 UTC
Here's a similar issue:

https://github.com/systemd/systemd/issues/20213
Comment 8 Garry Filakhtov 2021-09-05 00:34:39 UTC
Thanks. Reported: https://github.com/systemd/systemd/issues/20639
Comment 9 Garry Filakhtov 2021-09-05 23:22:19 UTC
Upstream has fixed an issue and the fix is now merged into their main branch, so next release will take care of this bug. I am running off the patch now.
Comment 10 Larry the Git Cow gentoo-dev 2021-09-08 18:29:54 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bf8a15acdb09aef0eedfaeb743e1ae566120e0b7

commit bf8a15acdb09aef0eedfaeb743e1ae566120e0b7
Author:     Mike Gilbert <floppym@gentoo.org>
AuthorDate: 2021-09-08 18:28:49 +0000
Commit:     Mike Gilbert <floppym@gentoo.org>
CommitDate: 2021-09-08 18:29:25 +0000

    sys-apps/systemd: backport fix for pam_systemd_home
    
    Closes: https://bugs.gentoo.org/811093
    Signed-off-by: Mike Gilbert <floppym@gentoo.org>

 .../systemd/files/249-home-secret-assert.patch     | 106 +++++++++++++++++++++
 sys-apps/systemd/systemd-249.4-r2.ebuild           |   1 +
 2 files changed, 107 insertions(+)