FS#63763 - [gdm] GDM 3.34 just shows a black screen with a blinking cursor in the upper left
Attached to Project:
Arch Linux
Opened by Martin (mort96) - Saturday, 14 September 2019, 14:43 GMT
Last edited by Balló György (City-busz) - Thursday, 08 June 2023, 17:09 GMT
Opened by Martin (mort96) - Saturday, 14 September 2019, 14:43 GMT
Last edited by Balló György (City-busz) - Thursday, 08 June 2023, 17:09 GMT
|
Details
Description:
With GDM 3.32, GDM works as expected. With GDM 3.34, it just shows a black screen. Automatic login still works. Steps to reproduce: Install gdm 3.34, enable gdm, reboot. I'm running gdm on a laptop with an Intel i7-8705G and a 4k screen. |
This task depends upon
EDIT: Actually for me, after some waiting period it does show up on its own, it just needs long time.
AMD 3900x and Nvidia 2080Ti
Possible workarounds:
* Try out the patch linked in the above bug. PKGBUILD & patches here: https://gitlab.com/intgr/arch-pkg-gdm/tree/master/trunk
* Many users in forums are recommending "early KMS" to fix GDM issues: https://wiki.archlinux.org/index.php/Kernel_mode_setting#Early_KMS_start
If I go to tty2, and back to tty1 it loads imidiatelly.
Here's what systemd shows:
Jun 13 08:57:29 elitebook systemd[1]: Started GNOME Display Manager.
Jun 13 08:57:30 elitebook gdm[625]: GdmDisplay: Session never registered, failing
Jun 13 08:57:30 elitebook gdm[625]: Child process -698 was already dead.
Jun 13 08:57:30 elitebook gdm[625]: Child process -698 was already dead.
Jun 13 08:57:30 elitebook gdm[625]: Child process -737 was already dead.
Jun 13 08:57:53 elitebook gdm-password][1058]: gkr-pam: unable to locate daemon control file
Jun 13 08:57:53 elitebook gdm-password][1058]: gkr-pam: stashed password to try later in open session
Jun 13 08:57:53 elitebook gdm-password][1058]: pam_unix(gdm-password:session): session opened for user pashinskikh by (uid=0)
Jun 13 08:57:53 elitebook gdm-password][1058]: gkr-pam: gnome-keyring-daemon started properly and unlocked keyring
Jun 13 08:57:57 elitebook gdm[625]: Child process -805 was already dead.
Switching to terminal and back solves the problem... still a nasty workaround.
See https://gitweb.gentoo.org/repo/gentoo.git/tree/gnome-base/gdm/files/gdm-CanGraphical-wait.patch
PKGBUILD: https://gitlab.com/intgr/arch-pkg-gdm/tree/master/trunk
I've also run into this extremely annoying bug. At first I thought it was related to not having enough entropy at boot time, so I installed rng-tools and enabled rngd.service, but that didn't solve the issue.
I ultimately figured out that adding a delay to the gdm.service allowed me to start GDM consistently. To do this I inserted "ExecPreStart=/bin/sleep 2" line into the gdm.service file, so it looks like:
... more ...
[Service]
ExecStartPre=/bin/sleep 2
ExecStart=/usr/bin/gdm
... more ...
In order to prevent this change from being overwritten, I created a pacman hook that will always insert the delay after a gdm package update.
Hook is installed here: /etc/pacman.d/hooks/gdm.hook
And the hook looks like:
[Trigger]
Operation=Install
Operation=Upgrade
Type=Package
Target=gdm
[Action]
Description=Adds a small delay to /usr/lib/systemd/system/gdm.service to work around bug
Depends=coreutils
When=PostTransaction
Exec=/usr/bin/sed -i '/^\[Service\]/a ExecStartPre=\/bin\/sleep 2' /usr/lib/systemd/system/gdm.service
This seems to work well for me, and I don't have to reapply the fix after updating GDM.
I hope this helps others.