I've currently set up a new install of Debian stretch. I followed the description on how to update to Debian Testing (buster) and everything went perfectly. I rebooted the system, and everything went fine.
Next I compiled a 4.19.5 Kernel on this System for my System:
$ git clone -b kernel_4.19.y git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
$ cd linux
$ cp /boot/config-`uname -r` .config
$ yes "" | make oldconfig
$ make -j64 bzImage modules
$ sudo make modules_install install
$ sudo update-grub
$ sudo reboot
Compiling the kernel went flawless, the kernel boots, everything works fine. Except gdm3
: It wont start after booting the Kernel.
So I again booted the Debian 4.18.y kernel but still just have a black screen. Booting 4.19.5 again, I ssh'd from a different machine on this machine and issued systemctl restart gdm3
. After 2-4 seconds, the login-screen pops up on my display and everything works as intended.
Again, rebootet the system. No login-screen, just black. Again, ssh'd on the machine, restarted gdm3
, everything pops up as it should be.
I've digged around in the logs of gdm3
when it wont start.
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) config/udev: removing GPU device /sys/devices/pci0000:40/0000:40:03.1/0000:43:00.0/drm/card0 /dev/dri/card0
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: xf86: remove device 0 /sys/devices/pci0000:40/0000:40:03.1/0000:43:00.0/drm/card0
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: failed to find screen to remove
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: dbus-daemon[1264]: [session uid=103 pid=1264] Activating service name='org.freedesktop.systemd1' requested by ':1.0' (uid=103 pid=1176 comm="/usr/lib/gdm3/gdm-x-session gnome-session --autost")
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: dbus-daemon[1264]: [session uid=103 pid=1264] Activated service 'org.freedesktop.systemd1' failed: Process org.freedesktop.systemd1 exited with status 1
Nov 28 12:11:46 bamdevsrv gdm3[1102]: GdmManager: trying to register new display
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: Unable to register display with display manager
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (**) Option "fd" "25"
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) event1 - Power Button: device removed
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (**) Option "fd" "28"
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) event0 - Power Button: device removed
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (**) Option "fd" "29"
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) event16 - Cherry USB keyboard: device removed
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (**) Option "fd" "30"
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) event18 - Cherry USB keyboard System Control: device removed
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (**) Option "fd" "31"
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) event19 - Cherry USB keyboard Consumer Control: device removed
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (**) Option "fd" "32"
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) event20 - PixArt Cherry USB Optical Mouse: device removed
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) UnloadModule: "libinput"
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) systemd-logind: releasing fd for 13:84
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) UnloadModule: "libinput"
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) systemd-logind: releasing fd for 13:83
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) UnloadModule: "libinput"
Nov 28 12:11:46 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) systemd-logind: releasing fd for 13:82
Nov 28 12:11:47 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) UnloadModule: "libinput"
Nov 28 12:11:47 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) systemd-logind: releasing fd for 13:80
Nov 28 12:11:47 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) UnloadModule: "libinput"
Nov 28 12:11:47 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) systemd-logind: releasing fd for 13:64
Nov 28 12:11:47 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) UnloadModule: "libinput"
Nov 28 12:11:47 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) systemd-logind: releasing fd for 13:65
Nov 28 12:11:47 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) RADEON(0): RADEONCloseScreen
Nov 28 12:11:47 bamdevsrv /usr/lib/gdm3/gdm-x-session[1176]: (II) Server terminated successfully (0). Closing log file.
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmSession: Emitting 'session-exited' signal with exit code '70'
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmSession: stopping conversation gdm-launch-environment
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmSessionWorkerJob: Stopping job pid:1170
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmCommon: sending signal 15 to process 1170
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmDisplay: Greeter exited: 70
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmLocalDisplayFactory: display status changed: 4
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmDisplay: finish display
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmDisplayStore: Unreffing display: 0x55da450b4350
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmDisplay: Disposing display
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmCommon: sending signal 15 to process -1176
Nov 28 12:11:47 bamdevsrv gdm3[1102]: Child process -1176 was already dead.
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmSession: Closing session
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmSession: Stopping all conversations
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmSessionWorkerJob: Stopping job pid:1170
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmCommon: sending signal 15 to process 1170
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmSessionWorkerJob: Waiting on process 1170
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmCommon: process (pid:1170) done (status:0)
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmSessionWorkerJob: SessionWorkerJob died
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmSession: Disposing session
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmSession: Closing session
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmSession: Stopping all conversations
Nov 28 12:11:47 bamdevsrv gdm3[1102]: GdmDisplay: Finalizing display: /org/gnome/DisplayManager/Displays/94395949597520
Finally it is stuck at Finalizing display
.
After I issue an restart, the logs look nearly identical, but it continues after Finalizing display
with a lot of other output.
Nov 28 13:59:16 bamdevsrv gdm3[1129]: GdmSession: Disposing session
Nov 28 13:59:16 bamdevsrv gdm3[1129]: GdmSession: Closing session
Nov 28 13:59:16 bamdevsrv gdm3[1129]: GdmSession: Stopping all conversations
Nov 28 13:59:16 bamdevsrv gdm3[1129]: GdmDisplay: Finalizing display: /org/gnome/DisplayManager/Displays/93976516326224
Nov 28 14:02:49 bamdevsrv gdm3[1129]: GDM finished, cleaning up...
Nov 28 14:02:49 bamdevsrv gdm3[1129]: GdmDisplayStore: Clearing display store
Nov 28 14:02:49 bamdevsrv gdm3[2448]: Enabling debugging
Nov 28 14:02:49 bamdevsrv gdm3[2448]: Changing user:group to Debian-gdm:Debian-gdm
Nov 28 14:02:49 bamdevsrv gdm3[2448]: Successfully connected to D-Bus
Nov 28 14:02:49 bamdevsrv gdm3[2448]: GdmManager: GDM starting to manage displays
Nov 28 14:02:49 bamdevsrv gdm3[2448]: GLib: posix_spawn avoided (fd close requested)
Nov 28 14:02:49 bamdevsrv gdm3[2448]: Could not ping plymouth: Failed to execute child process “/bin/plymouth” (No such file or directory)
Nov 28 14:02:49 bamdevsrv gdm3[2448]: GdmLocalDisplayFactory: enumerating seats from logind
Nov 28 14:02:49 bamdevsrv gdm3[2448]: GdmLocalDisplayFactory: wayland login display for seat seat0 requested
Nov 28 14:02:49 bamdevsrv gdm3[2448]: GdmLocalDisplayFactory: Adding display on seat seat0
Nov 28 14:02:49 bamdevsrv gdm3[2448]: GdmDisplay: id: (null)
Nov 28 14:02:49 bamdevsrv gdm3[2448]: GdmDisplay: seat id: (null)
Nov 28 14:02:49 bamdevsrv gdm3[2448]: GdmDisplay: session class: greeter
Nov 28 14:02:49 bamdevsrv gdm3[2448]: GdmDisplay: initial: no
Nov 28 14:02:49 bamdevsrv gdm3[2448]: GdmDisplay: allow timed login: yes
Nov 28 14:02:49 bamdevsrv gdm3[2448]: GdmDisplay: local: yes
Nov 28 14:02:49 bamdevsrv gdm3[2448]: GdmDisplay: session type: wayland
Nov 28 14:02:49 bamdevsrv gdm3[2448]: GdmDisplay: seat id: seat0
Nov 28 14:02:49 bamdevsrv gdm3[2448]: GdmDisplay: initial: yes
Nov 28 14:02:49 bamdevsrv gdm3[2448]: GdmDisplayStore: Adding display /org/gnome/DisplayManager/Displays/94188358636112 to store
Nov 28 14:02:49 bamdevsrv gdm3[2448]: GdmDisplay: Managing display: /org/gnome/DisplayManager/Displays/94188358636112
Nov 28 14:02:49 bamdevsrv gdm3[2448]: GdmDisplay: Preparing display: /org/gnome/DisplayManager/Displays/94188358636112
How is gdm3 broken on boot, but not after I restart it?
Edit: Currently I'm running a workaround. But this is nothing other than an ugly hack as new systemd service:
[Unit]
After=gdm3.service
[Service]
ExecStartPre=/bin/sleep 15
ExecStart=/bin/systemctl restart gdm3
[Install]
WantedBy=multi-user.target