Antergos / web-greeter

A modern, visually appealing greeter for LightDM.
http://antergos.github.io/web-greeter
GNU General Public License v3.0
232 stars 57 forks source link

Segfault on boot #159

Open yawpitch opened 6 years ago

yawpitch commented 6 years ago

Hi, I am consistently getting a segfault on every boot.

I'm using the default theme, have enabled debug mode and checked the seat logs ... there isn't anything obvious.


                                                Stack trace of thread 913:
                                                #0  0x00007f9acb6d8ba7 gtk_widget_destroy (libgtk-3.so.0)
                                                #1  0x000055dfe6904101 n/a (lightdm-webkit2-greeter)
                                                #2  0x00007f9acbcb14de n/a (libglib-2.0.so.0)
                                                #3  0x00007f9acbcb4ca6 g_main_context_dispatch (libglib-2.0.so.0)
                                                #4  0x00007f9acbcb5081 n/a (libglib-2.0.so.0)
                                                #5  0x00007f9acbcb53b2 g_main_loop_run (libglib-2.0.so.0)
                                                #6  0x00007f9acb582d2f gtk_main (libgtk-3.so.0)
                                                #7  0x000055dfe6903abd n/a (lightdm-webkit2-greeter)
                                                #8  0x00007f9ac68aaf4a __libc_start_main (libc.so.6)
                                                #9  0x000055dfe6903b2a n/a (lightdm-webkit2-greeter)

                                                Stack trace of thread 922:
                                                #0  0x00007f9ac697597b __poll (libc.so.6)
                                                #1  0x00007f9acbcb4ff3 n/a (libglib-2.0.so.0)
                                                #2  0x00007f9acbcb510e g_main_context_iteration (libglib-2.0.so.0)
                                                #3  0x00007f9acbcb5162 n/a (libglib-2.0.so.0)
                                                #4  0x00007f9acbcdd26a n/a (libglib-2.0.so.0)
                                                #5  0x00007f9ac61f708c start_thread (libpthread.so.0)
                                                #6  0x00007f9ac697fe7f __clone (libc.so.6)

                                                Stack trace of thread 914:
                                                #0  0x00007f9ac61fd786 pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread.so.0)
                                                #1  0x00007f9ac7e0c1fb _ZN7bmalloc9Scavenger13threadRunLoopEv (libjavascriptcoregtk-4.0.so.18)
                                                #2  0x00007f9abd30cb9f execute_native_thread_routine (libstdc++.so.6)
                                                #3  0x00007f9ac61f708c start_thread (libpthread.so.0)
                                                #4  0x00007f9ac697fe7f __clone (libc.so.6)

                                                Stack trace of thread 937:
                                                #0  0x00007f9ac697a879 syscall (libc.so.6)
                                                #1  0x00007f9acbcfbdcd g_cond_wait_until (libglib-2.0.so.0)
                                                #2  0x00007f9acbc88753 n/a (libglib-2.0.so.0)
                                                #3  0x00007f9acbc88d3e g_async_queue_timeout_pop (libglib-2.0.so.0)
                                                #4  0x00007f9acbcddd81 n/a (libglib-2.0.so.0)
                                                #5  0x00007f9acbcdd26a n/a (libglib-2.0.so.0)
                                                #6  0x00007f9ac61f708c start_thread (libpthread.so.0)
                                                #7  0x00007f9ac697fe7f __clone (libc.so.6)

                                                Stack trace of thread 930:
                                                #0  0x00007f9ac697597b __poll (libc.so.6)
                                                #1  0x00007f9acbcb4ff3 n/a (libglib-2.0.so.0)
                                                #2  0x00007f9acbcb53b2 g_main_loop_run (libglib-2.0.so.0)
                                                #3  0x00007f9ac7e0080a _ZN3WTF7RunLoop3runEv (libjavascriptcoregtk-4.0.so.18)
                                                #4  0x00007f9ac7dff595 n/a (libjavascriptcoregtk-4.0.so.18)
                                                #5  0x00007f9ac7dc8b30 _ZN3WTF6Thread10entryPointEPNS0_16NewThreadContextE (libjavascriptcoregtk-4.0.so.18)
                                                #6  0x00007f9ac7dfe6da n/a (libjavascriptcoregtk-4.0.so.18)
                                                #7  0x00007f9ac61f708c start_thread (libpthread.so.0)
                                                #8  0x00007f9ac697fe7f __clone (libc.so.6)

                                                Stack trace of thread 933:
                                                #0  0x00007f9ac61fd786 pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread.so.0)
                                                #1  0x00007f9ac7dff2cc _ZN3WTF15ThreadCondition9timedWaitERNS_5MutexEd (libjavascriptcoregtk-4.0.so.18)
                                                #2  0x00007f9ac7dc4605 _ZN3WTF10ParkingLot21parkConditionallyImplEPKvRKNS_12ScopedLambdaIFbvEEERKNS3_IFvvEEERKNS_24TimeWithDynamicClockTypeE (libjavascriptcoregtk-4.0.so.18)
                                                #3  0x00007f9ac7db09bb _ZN3WTF5sleepEd (libjavascriptcoregtk-4.0.so.18)
                                                #4  0x00007f9ac88ce83e n/a (libwebkit2gtk-4.0.so.37)
                                                #5  0x00007f9ac7dc8b30 _ZN3WTF6Thread10entryPointEPNS0_16NewThreadContextE (libjavascriptcoregtk-4.0.so.18)
                                                #6  0x00007f9ac7dfe6da n/a (libjavascriptcoregtk-4.0.so.18)
                                                #7  0x00007f9ac61f708c start_thread (libpthread.so.0)
                                                #8  0x00007f9ac697fe7f __clone (libc.so.6)

                                                Stack trace of thread 940:
                                                #0  0x00007f9ac697597b __poll (libc.so.6)
                                                #1  0x00007f9acbcb4ff3 n/a (libglib-2.0.so.0)
                                                #2  0x00007f9acbcb53b2 g_main_loop_run (libglib-2.0.so.0)
                                                #3  0x00007f9ac7e0080a _ZN3WTF7RunLoop3runEv (libjavascriptcoregtk-4.0.so.18)
                                                #4  0x00007f9ac7dff595 n/a (libjavascriptcoregtk-4.0.so.18)
                                                #5  0x00007f9ac7dc8b30 _ZN3WTF6Thread10entryPointEPNS0_16NewThreadContextE (libjavascriptcoregtk-4.0.so.18)
                                                #6  0x00007f9ac7dfe6da n/a (libjavascriptcoregtk-4.0.so.18)
                                                #7  0x00007f9ac61f708c start_thread (libpthread.so.0)
                                                #8  0x00007f9ac697fe7f __clone (libc.so.6)

                                                Stack trace of thread 939:
                                                #0  0x00007f9ac697597b __poll (libc.so.6)
                                                #1  0x00007f9acbcb4ff3 n/a (libglib-2.0.so.0)
                                                #2  0x00007f9acbcb53b2 g_main_loop_run (libglib-2.0.so.0)
                                                #3  0x00007f9ac7e0080a _ZN3WTF7RunLoop3runEv (libjavascriptcoregtk-4.0.so.18)
                                                #4  0x00007f9ac7dff595 n/a (libjavascriptcoregtk-4.0.so.18)
                                                #5  0x00007f9ac7dc8b30 _ZN3WTF6Thread10entryPointEPNS0_16NewThreadContextE (libjavascriptcoregtk-4.0.so.18)
                                                #6  0x00007f9ac7dfe6da n/a (libjavascriptcoregtk-4.0.so.18)
                                                #7  0x00007f9ac61f708c start_thread (libpthread.so.0)
                                                #8  0x00007f9ac697fe7f __clone (libc.so.6)

                                                Stack trace of thread 929:
                                                #0  0x00007f9ac6977a7c fdatasync (libc.so.6)
                                                #1  0x00007f9abe2dbf0a n/a (libsqlite3.so.0)
                                                #2  0x00007f9abe3182c9 n/a (libsqlite3.so.0)
                                                #3  0x00007f9abe31a5be sqlite3WalCheckpoint (libsqlite3.so.0)
                                                #4  0x00007f9abe31a677 sqlite3WalClose (libsqlite3.so.0)
                                                #5  0x00007f9abe2e0b67 sqlite3PagerClose (libsqlite3.so.0)
                                                #6  0x00007f9abe2798fd sqlite3BtreeClose (libsqlite3.so.0)
                                                #7  0x00007f9abe2d2b33 sqlite3LeaveMutexAndCloseZombie (libsqlite3.so.0)
                                                #8  0x00007f9abe2d44d4 n/a (libsqlite3.so.0)
                                                #9  0x00007f9ac91cdecf n/a (libwebkit2gtk-4.0.so.37)
                                                #10 0x00007f9ac8735813 n/a (libwebkit2gtk-4.0.so.37)
                                                #11 0x00007f9ac88d51ac n/a (libwebkit2gtk-4.0.so.37)
                                                #12 0x00007f9ac88d7497 n/a (libwebkit2gtk-4.0.so.37)
                                                #13 0x00007f9ac7dc7314 _ZN3WTF7RunLoop11performWorkEv (libjavascriptcoregtk-4.0.so.18)
                                                #14 0x00007f9ac7dffdaa n/a (libjavascriptcoregtk-4.0.so.18)
                                                #15 0x00007f9acbcb4ca6 g_main_context_dispatch (libglib-2.0.so.0)
                                                #16 0x00007f9acbcb5081 n/a (libglib-2.0.so.0)
                                                #17 0x00007f9acbcb53b2 g_main_loop_run (libglib-2.0.so.0)
                                                #18 0x00007f9ac7e0080a _ZN3WTF7RunLoop3runEv (libjavascriptcoregtk-4.0.so.18)
                                                #19 0x00007f9ac7dff595 n/a (libjavascriptcoregtk-4.0.so.18)
                                                #20 0x00007f9ac7dc8b30 _ZN3WTF6Thread10entryPointEPNS0_16NewThreadContextE (libjavascriptcoregtk-4.0.so.18)
                                                #21 0x00007f9ac7dfe6da n/a (libjavascriptcoregtk-4.0.so.18)
                                                #22 0x00007f9ac61f708c start_thread (libpthread.so.0)
                                                #23 0x00007f9ac697fe7f __clone (libc.so.6)

This seems to be similar to #100, but the backgrounds directory is readable (and the background is working when the system eventually relaunches the greeter and it does not segfault).

Any ideas?

gberdzenishvili commented 6 years ago

In addition to this coredump I am getting CRITICAL: g_object_unref: assertion 'G_IS_OBJECT (object)' failed in /var/log/lightdm/lightdm.log

gberdzenishvili commented 6 years ago

Not sure it this affects anything but it looks strange:

[+0.00s] DEBUG: Loading configuration from /etc/lightdm/lightdm.conf
[+0.00s] DEBUG:   [LightDM] contains unknown option session-wrapper

Found it in /var/log/lightdm/lightdm.log

gberdzenishvili commented 6 years ago

Here are my configs and full log files:

#

Seat configuration

#

Seat configuration is matched against the seat name glob in the section, for example:

[Seat:*] matches all seats and is applied first.

[Seat:seat0] matches the seat named "seat0".

[Seat:seat-thin-client*] matches all seats that have names that start with "seat-thin-client".

#

type = Seat type (local, xremote, unity)

pam-service = PAM service to use for login

pam-autologin-service = PAM service to use for autologin

pam-greeter-service = PAM service to use for greeters

xserver-backend = X backend to use (mir)

xserver-command = X server command to run (can also contain arguments e.g. X -special-option)

xmir-command = Xmir server command to run (can also contain arguments e.g. Xmir -special-option)

xserver-config = Config file to pass to X server

xserver-layout = Layout to pass to X server

xserver-allow-tcp = True if TCP/IP connections are allowed to this X server

xserver-share = True if the X server is shared for both greeter and session

xserver-hostname = Hostname of X server (only for type=xremote)

xserver-display-number = Display number of X server (only for type=xremote)

xdmcp-manager = XDMCP manager to connect to (implies xserver-allow-tcp=true)

xdmcp-port = XDMCP UDP/IP port to communicate on

xdmcp-key = Authentication key to use for XDM-AUTHENTICATION-1 (stored in keys.conf)

unity-compositor-command = Unity compositor command to run (can also contain arguments e.g. unity-system-compositor -special-option)

unity-compositor-timeout = Number of seconds to wait for compositor to start

greeter-session = Session to load for greeter

greeter-hide-users = True to hide the user list

greeter-allow-guest = True if the greeter should show a guest login option

greeter-show-manual-login = True if the greeter should offer a manual login option

greeter-show-remote-login = True if the greeter should offer a remote login option

user-session = Session to load for users

allow-user-switching = True if allowed to switch users

allow-guest = True if guest login is allowed

guest-session = Session to load for guests (overrides user-session)

session-wrapper=/etc/lightdm/Xsession

greeter-wrapper = Wrapper script to run greeter with

guest-wrapper = Wrapper script to run guest sessions with

display-setup-script = Script to run when starting a greeter session (runs as root)

display-stopped-script = Script to run after stopping the display server (runs as root)

greeter-setup-script = Script to run when starting a greeter (runs as root)

session-setup-script = Script to run when starting a user session (runs as root)

session-cleanup-script = Script to run when quitting a user session (runs as root)

autologin-guest = True to log in as guest by default

autologin-user = User to log in with by default (overrides autologin-guest)

autologin-user-timeout = Number of seconds to wait before loading default user

autologin-session = Session to load for automatic login (overrides user-session)

autologin-in-background = True if autologin session should not be immediately activated

exit-on-failure = True if the daemon should exit if this seat fails

# [Seat:*]

type=local

pam-service=lightdm

pam-autologin-service=lightdm-autologin

pam-greeter-service=lightdm-greeter

xserver-backend=

xserver-command=X

xmir-command=Xmir

xserver-config=

xserver-layout=

xserver-allow-tcp=false

xserver-share=true

xserver-hostname=

xserver-display-number=

xdmcp-manager=

xdmcp-port=177

xdmcp-key=

unity-compositor-command=unity-system-compositor

unity-compositor-timeout=60

greeter-session=lightdm-webkit2-greeter

greeter-hide-users=false

greeter-allow-guest=true

greeter-show-manual-login=false

greeter-show-remote-login=true

user-session=gnome

allow-user-switching=true

allow-guest=true

guest-session=

session-wrapper=/etc/lightdm/Xsession

greeter-wrapper=

guest-wrapper=

display-setup-script=

display-stopped-script=

greeter-setup-script=

session-setup-script=

session-cleanup-script=

autologin-guest=false

autologin-user=

autologin-user-timeout=0

autologin-in-background=false

autologin-session=

exit-on-failure=false

#

XDMCP Server configuration

#

enabled = True if XDMCP connections should be allowed

port = UDP/IP port to listen for connections on

listen-address = Host/address to listen for XDMCP connections (use all addresses if not present)

key = Authentication key to use for XDM-AUTHENTICATION-1 or blank to not use authentication (stored in keys.conf)

hostname = Hostname to report to XDMCP clients (defaults to system hostname if unset)

#

The authentication key is a 56 bit DES key specified in hex as 0xnnnnnnnnnnnnnn. Alternatively

it can be a word and the first 7 characters are used as the key.

# [XDMCPServer]

enabled=false

port=177

listen-address=

key=

hostname=

#

VNC Server configuration

#

enabled = True if VNC connections should be allowed

command = Command to run Xvnc server with

port = TCP/IP port to listen for connections on

listen-address = Host/address to listen for VNC connections (use all addresses if not present)

width = Width of display to use

height = Height of display to use

depth = Color depth of display to use

# [VNCServer]

enabled=false

command=Xvnc

port=5900

listen-address=

width=1024

height=768

depth=8


* `lightdm-webkit2-greeter.conf`

#

[greeter]

debug_mode = Greeter theme debug mode.

detect_theme_errors = Provide an option to load a fallback theme when theme errors are detected.

screensaver_timeout = Blank the screen after this many seconds of inactivity.

secure_mode = Don't allow themes to make remote http requests.

time_format = A moment.js format string so the greeter can generate localized time for display.

time_language = Language to use when displaying the time or "auto" to use the system's language.

webkit_theme = Webkit theme to use.

#

NOTE: See moment.js documentation for format string options: http://momentjs.com/docs/#/displaying/format/

#

[greeter] debug_mode = true detect_theme_errors = true screensaver_timeout = 300 secure_mode = true time_format = LT time_language = auto webkit_theme = antergos

#

[branding]

background_images = Path to directory that contains background images for use by themes.

logo = Path to logo image for use by greeter themes.

user_image = Default user image/avatar. This is used by themes for users that have no .face image.

#

NOTE: Paths must be accessible to the lightdm system user account (so they cannot be anywhere in /home)

#

[branding] background_images = /usr/share/antergos/wallpapers logo = /usr/share/lightdm-webkit/themes/antergos/img/antergos.png user_image = /usr/share/lightdm-webkit/themes/antergos/img/antergos-logo-user.png

netsudo commented 6 years ago

I'm having the same issue intermittently which causes lightdm to crash and send me to the login screen