[glib2.0 2.67.4-1] Black screen on boot, login screen missing/delayed, eventually comes up without Wayland support (only Xorg sessions offered)

Bug #1916701 reported by Daniel van Vugt
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
GLib
Fix Released
Unknown
glib2.0 (Ubuntu)
Fix Released
Critical
Iain Lane

Bug Description

When I installed the glib2.0 2.67.4-1 packages I consistently encountered a black screen on boot. The login screen was missing/delayed but eventually comes up without Wayland support (only Xorg sessions offered).

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

When the login screen does finally come up (without Wayland support), the first log message is:

Feb 24 15:25:39 kab gnome-shell[1013]: JS ERROR: Gio.IOErrorEnum: Error calling StartServiceByName for org.gnome.SessionManager: Timeout was reached
                                       _injectToMethod/klass[method]@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:290:25
                                       _makeProxyWrapper/<@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:267:17
                                       SessionManager@resource:///org/gnome/shell/misc/gnomeSession.js:36:12
                                       _init@resource:///org/gnome/shell/misc/systemActions.js:140:25
                                       getDefault@resource:///org/gnome/shell/misc/systemActions.js:28:22
                                       _init@resource:///org/gnome/shell/ui/status/system.js:18:31
                                       _init@resource:///org/gnome/shell/ui/panel.js:743:24
                                       _ensureIndicator@resource:///org/gnome/shell/ui/panel.js:1070:25
                                       _updateBox@resource:///org/gnome/shell/ui/panel.js:1081:34
                                       _updatePanel@resource:///org/gnome/shell/ui/panel.js:1027:14
                                       _init@resource:///org/gnome/shell/ui/panel.js:836:14
                                       _initializeUI@resource:///org/gnome/shell/ui/main.js:221:13
                                       start@resource:///org/gnome/shell/ui/main.js:162:5
                                       @<main>:1:47
Feb 24 15:25:39 kab gnome-shell[1013]: Execution of main.js threw exception: Script <main> threw an exception

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

It looks like this glib error always comes first:

Feb 24 15:24:48 kab gnome-shell[1013]: invalid (NULL) pointer instance
Feb 24 15:24:48 kab gnome-shell[1013]: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
...
Feb 24 15:25:39 kab gnome-shell[1013]: JS ERROR: Gio.IOErrorEnum: Error calling StartServiceByName for org.gnome.SessionManager: Timeout was reached

tags: added: block-proposed
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

I forced the warning to dump core and get:

Feb 24 15:50:49 kab gnome-shell.bin[1006]: invalid (NULL) pointer instance
Feb 24 15:50:49 kab org.gnome.Shell.desktop[1006]: GNOME Shell crashed with signal 5
Feb 24 15:50:49 kab org.gnome.Shell.desktop[1006]: == Stack trace for context 0x559976392170 ==
Feb 24 15:50:49 kab org.gnome.Shell.desktop[1006]: #0 5599765f6f18 i resource:///org/gnome/shell/ui/main.js:187 (3d80d9cbee70 @ 52)
Feb 24 15:50:49 kab org.gnome.Shell.desktop[1006]: #1 5599765f6e68 i resource:///org/gnome/shell/ui/main.js:162 (3d80d9cbefb0 @ 324)
Feb 24 15:50:49 kab org.gnome.Shell.desktop[1006]: #2 5599765f6de0 i <main>:1 (3d80d9c84100 @ 48)

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Looks like gnome-shell is failing some basic GObject initialization. The only ABI/API break I can see in glib 2.67 is this: https://gitlab.gnome.org/GNOME/glib/-/commit/334f6953364680ddc6c0d3da13fda1d92bf5379d

no longer affects: gnome-session (Ubuntu)
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Building GNOME 40 from git has the same bug, surprisingly:

  * Wayland instances hang and never start properly;
  * Xorg instances start immediately without error.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Tracking in https://gitlab.gnome.org/GNOME/glib/-/issues/2332 although that one does not look familiar. One of its duplicates looks more familiar: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3744

Changed in glib2.0 (Ubuntu):
status: New → Triaged
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Verified the fix from upstream works:

https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1958.patch

It's coming in 2.67.5

tags: added: fixed-in-2.67.5 fixed-upstream
Changed in glib2.0 (Ubuntu):
status: Triaged → Fix Committed
assignee: nobody → Marco Trevisan (Treviño) (3v1n0)
Iain Lane (laney)
Changed in glib2.0 (Ubuntu):
assignee: Marco Trevisan (Treviño) (3v1n0) → Iain Lane (laney)
tags: removed: block-proposed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package glib2.0 - 2.67.5-2

---------------
glib2.0 (2.67.5-2) experimental; urgency=medium

  * debian/tests/control: Build-Depend on libc6-dev; the `pollable` test
    requires it. See [upstream MR !1977][0]. The upstream tests now rely on
    finding "libutil.so", which is in libc6-dev. Once that MR, or something
    like it, is merged, we can remove this test-dep as the runtime library
    will be being used.
    [0]: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1977

 -- Iain Lane <email address hidden> Tue, 02 Mar 2021 18:29:23 +0000

Changed in glib2.0 (Ubuntu):
status: Fix Committed → Fix Released
Changed in glib:
status: Unknown → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.