Bug 1762151 - Oops, something went wrong: Unable to initialize the Clutter backend
Summary: Oops, something went wrong: Unable to initialize the Clutter backend
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: gnome-shell
Version: 32
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Florian Müllner
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-10-16 03:52 UTC by Paul Dufresne
Modified: 2020-11-17 08:30 UTC (History)
17 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-11-17 08:30:34 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
journalctl -r no1 (169.75 KB, text/plain)
2019-10-16 03:56 UTC, Paul Dufresne
no flags Details
lspci (14.76 KB, text/plain)
2019-10-16 04:02 UTC, Paul Dufresne
no flags Details
journalctl -p3 (3.27 KB, text/plain)
2019-10-16 04:02 UTC, Paul Dufresne
no flags Details
journalctl -p4 (169.88 KB, text/plain)
2019-10-16 04:03 UTC, Paul Dufresne
no flags Details
dmidecode.txt (13.94 KB, text/plain)
2019-10-16 04:03 UTC, Paul Dufresne
no flags Details

Description Paul Dufresne 2019-10-16 03:52:25 UTC
Description of problem:


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 1 Paul Dufresne 2019-10-16 03:56:42 UTC
Created attachment 1626250 [details]
journalctl -r no1

Unable to initialize Clutter: Unable to initialize the Clutter backend: no available drivers found.

Comment 2 Paul Dufresne 2019-10-16 04:02:01 UTC
Created attachment 1626251 [details]
lspci

Comment 3 Paul Dufresne 2019-10-16 04:02:35 UTC
Created attachment 1626252 [details]
journalctl -p3

Comment 4 Paul Dufresne 2019-10-16 04:03:03 UTC
Created attachment 1626253 [details]
journalctl -p4

Comment 5 Paul Dufresne 2019-10-16 04:03:31 UTC
Created attachment 1626254 [details]
dmidecode.txt

Comment 6 Paul Dufresne 2019-10-16 04:09:33 UTC
Oct 14 18:07:52 localhost-live /usr/libexec/gdm-x-session[1523]: xf86EnableIOPorts: failed to set IOPL for I/O (Operation not permitted)
Oct 14 18:07:52 localhost-live /usr/libexec/gdm-x-session[1523]: (II) intel(0): Using Kernel Mode Setting driver: i915, version 1.6.0 20190619
Oct 14 18:07:52 localhost-live /usr/libexec/gdm-x-session[1523]: (WW) Falling back to old probe method for modesetting
Oct 14 18:07:52 localhost-live /usr/libexec/gdm-x-session[1523]: (WW) Falling back to old probe method for fbdev
Oct 14 18:07:52 localhost-live /usr/libexec/gdm-x-session[1523]: (II) Loading sub module "fbdevhw"
Oct 14 18:07:52 localhost-live /usr/libexec/gdm-x-session[1523]: (II) LoadModule: "fbdevhw"
Oct 14 18:07:52 localhost-live /usr/libexec/gdm-x-session[1523]: (II) Loading /usr/lib64/xorg/modules/libfbdevhw.so
...
(EE) open /dev/fb0: Permission denied
...
(--) intel(0): Integrated Graphics Chipset: Intel(R) Q35
...
14 18:07:53 localhost-live gnome-shell[1547]: Unable to initialize Clutter: Unable to initialize the Clutter backend: no available drivers found.
Oct 14 18:07:53 localhost-live gnome-shell[1547]: Unable to initialize Clutter.
Oct 14 18:07:53 localhost-live gnome-session-binary[1530]: WARNING: App 'org.gnome.Shell.desktop' exited with code 1
Oct 14 18:07:53 localhost-live gnome-shell[1554]: Unable to initialize Clutter: Unable to initialize the Clutter backend: no available drivers found.
Oct 14 18:07:53 localhost-live gnome-shell[1554]: Unable to initialize Clutter.
Oct 14 18:07:53 localhost-live gnome-session-binary[1530]: WARNING: App 'org.gnome.Shell.desktop' exited with code 1
Oct 14 18:07:53 localhost-live gnome-session-binary[1530]: WARNING: App 'org.gnome.Shell.desktop' respawning too quickly
Oct 14 18:07:53 localhost-live gnome-session-binary[1530]: Unrecoverable failure in required component org.gnome.Shell.desktop

Comment 7 Paul Dufresne 2019-10-16 04:15:54 UTC
On this specific computer, with my usb key with https://download.fedoraproject.org/pub/fedora/linux/releases/test/31_Beta/Workstation/x86_64/iso/Fedora-Workstation-Live-x86_64-31_Beta-1.1.iso on it, get "Oops, something gone wrong" with live session, when I would be expected to see gdm screen (login screen). I then change to Alt-F3, but it happens often again there. Still was able to collect information in the files attached.

Comment 8 Paul Dufresne 2019-10-16 04:28:05 UTC
I read somewhere that to work around:
(EE) open /dev/fb0: Permission denied
I could create /etc/X11/Xwrapper.config with:
needs_root_rights=yes
See man Xorg.wrap for the details.

Comment 9 Paul Dufresne 2019-10-16 09:11:05 UTC
man Xorg.wrap says: "When auto-detecting the wrapper will drop rights if kms graphics are available and not drop them if no kms graphics are detected. If a  system  has multiple graphics cards and some are not kms capable auto-detection may fail, in this case manual configuration should be used."

And I see in my logs:
Oct 14 18:07:52 localhost-live /usr/libexec/gdm-x-session[1523]: (II) intel(0): Using Kernel Mode Setting driver: i915, version 1.6.0 20190619

So, kms seems to be handled by i915, rather than by kms module, and I think it confuse auto-detecting Xorg.wraper.

When I will have access to the computer, I'll try to boot with
i915.modeset=0 kernel parameter to force i915 not to handle kms itself and see if that help.

Comment 10 Villy Kruse 2019-11-03 08:13:16 UTC
(In reply to Paul Dufresne from comment #8)
> I read somewhere that to work around:
> (EE) open /dev/fb0: Permission denied
> I could create /etc/X11/Xwrapper.config with:
> needs_root_rights=yes
> See man Xorg.wrap for the details.

I did that on my system.  It did not make any difference.  Also verified that Xorg would then run a s root.

Comment 11 Alex Villacís Lasso 2019-11-04 17:24:00 UTC
I am also having this exact same problem with the Fedora 31 x86_64 Live ISO. In this same machine, gnome-shell 3.32 works correctly under Fedora 30.

I believe this has to do with gnome-shell/mutter dropping all support for OpenGL 1.4-only cards. The problem is that (at least under i915) the Wayland software rendering fallback is broken out of the box, and the X11 fallback is also broken, which leaves the user with a black screen.

The messages can be replicated by switching to a console login, logging in as root (no password), switching to text-only mode  with "init 3", logging out, then logging in again as "liveuser".

When running plain "gnome-shell --wayland":

(gnome-shell:36385): mutter-WARNING **: 12:18:51.831: Failed to initialize accelerated iGPU/dGPU framebuffer sharing: No matching EGL configs

(gnome-shell:36385): Clutter-CRITICAL **: 12:18:51.896: Unable to initialize Clutter: Unable to initialize the Clutter backend: no available drivers found.

(gnome-shell:36385): mutter-WARNING **: 12:18:51.896: Unable to initialize Clutter.

However, running "MESA_GL_VERSION_OVERRIDE=2.1 gnome-shell --wayland" coaxes gnome-shell into running in software rendering mode. Why doesn't gnome-session behave like this out of the box is unknown to me.

Comment 12 Alex Villacís Lasso 2019-11-04 17:44:52 UTC
The problem with the X11 fallback does not seem to be a graphics issue, but some kind of a race condition between startup of gnome-shell itself, and some required component:

Process list of liveuser right before "startx" that results in an "Oh No" screen:
USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
liveuser   39820  0.7  0.3  20512 10796 ?        Ss   12:33   0:00 /usr/lib/systemd/systemd --user
liveuser   39822  0.0  0.1 138712  5324 ?        S    12:33   0:00 (sd-pam)
liveuser   39830  0.1  0.1 226760  5852 tty1     Ss   12:33   0:00 -bash
liveuser   39855  0.0  0.1 276748  3708 ?        Ss   12:33   0:00 /usr/bin/dbus-broker-launch --scope user
liveuser   39856  0.0  0.0   5076  2972 ?        S    12:33   0:00 dbus-broker --log 4 --controller 11 --machine-id 1eb0a6c4c13e4f9eb2820a9dc3f4c575 --max-bytes 100000000000000 --max-fds 25000000000000 --max-matches 5000000000
liveuser   39858  0.0  0.2 446864  7480 ?        Ssl  12:33   0:00 /usr/libexec/gvfsd
liveuser   39863  0.0  0.2 383780  8412 ?        Sl   12:33   0:00 /usr/libexec/gvfsd-fuse /run/user/1000/gvfs -f
liveuser   39893  0.0  0.1 227020  3700 tty1     R+   12:34   0:00 ps ux

Process list of liveuser right before "startx" that results in a functional Gnome-Shell session:
USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
liveuser   39820  0.4  0.3  20988 11232 ?        Ss   12:33   0:00 /usr/lib/systemd/systemd --user
liveuser   39822  0.0  0.1 138712  5324 ?        S    12:33   0:00 (sd-pam)
liveuser   39830  0.0  0.1 226760  5852 tty1     Ss   12:33   0:00 -bash
liveuser   39855  0.0  0.1 276748  3708 ?        Ss   12:33   0:00 /usr/bin/dbus-broker-launch --scope user
liveuser   39856  0.2  0.1   6400  4244 ?        S    12:33   0:00 dbus-broker --log 4 --controller 11 --machine-id 1eb0a6c4c13e4f9eb2820a9dc3f4c575 --max-bytes 100000000000000 --max-fds 25000000000000 --max-matches 5000000000
liveuser   39858  0.0  0.2 446864  7480 ?        Ssl  12:33   0:00 /usr/libexec/gvfsd
liveuser   39863  0.0  0.2 383780  8412 ?        Sl   12:33   0:00 /usr/libexec/gvfsd-fuse /run/user/1000/gvfs -f
liveuser   39996  0.0  0.1 442824  4744 ?        Ssl  12:34   0:00 /usr/libexec/xdg-permission-store
liveuser   40000  0.1  0.7 520332 23404 ?        Ssl  12:34   0:00 /usr/libexec/gnome-shell-calendar-server
liveuser   40004  0.1  0.8 681328 28652 ?        Ssl  12:34   0:00 /usr/libexec/evolution-source-registry
liveuser   40011  0.1  1.1 888752 36844 ?        Ssl  12:34   0:00 /usr/libexec/goa-daemon
liveuser   40021  0.0  0.2 524252  8220 ?        Ssl  12:34   0:00 /usr/libexec/goa-identity-service
liveuser   40038  0.0  0.3 536144 12384 ?        Ssl  12:34   0:00 /usr/libexec/gvfs-udisks2-volume-monitor
liveuser   40043  0.0  0.1 443004  5920 ?        Ssl  12:34   0:00 /usr/libexec/gvfs-goa-volume-monitor
liveuser   40047  0.0  0.1 442928  6048 ?        Ssl  12:34   0:00 /usr/libexec/gvfs-mtp-volume-monitor
liveuser   40051  0.0  0.2 523896  9216 ?        Ssl  12:34   0:00 /usr/libexec/gvfs-afc-volume-monitor
liveuser   40056  0.0  0.1 445324  6544 ?        Ssl  12:34   0:00 /usr/libexec/gvfs-gphoto2-volume-monitor
liveuser   40089  0.2  0.9 1051312 30452 ?       Ssl  12:34   0:00 /usr/libexec/evolution-calendar-factory
liveuser   40103  0.0  0.1 156144  5496 ?        Ssl  12:34   0:00 /usr/libexec/dconf-service
liveuser   40108  0.1  0.7 882780 26416 ?        Ssl  12:34   0:00 /usr/libexec/evolution-addressbook-factory
liveuser   40304  0.1  0.5 404716 18584 ?        Ssl  12:34   0:00 /usr/bin/abrt-applet --gapplication-service
liveuser   40423  0.0  0.1 369440  6400 ?        Ssl  12:34   0:00 /usr/libexec/gvfsd-metadata
liveuser   40438  4.2  0.3 371024 12940 ?        S<sl 12:35   0:00 /usr/bin/pulseaudio --daemonize=no
liveuser   40493  0.0  0.0   7124   524 ?        Ss   12:35   0:00 /usr/bin/ssh-agent /etc/X11/xinit/Xclients
liveuser   40795  2.8  0.7 570156 23328 ?        Ssl  12:35   0:00 /usr/libexec/tracker-store
liveuser   40867  0.0  0.1 227020  3560 tty1     R+   12:35   0:00 ps ux

I had to retry "startx" a few times to get into a state that allowed the full shell.

Comment 13 Villy Kruse 2019-11-04 19:43:46 UTC
My display adapter is:  Is that something that could be common between the failing systems?

        *-display
             description: VGA compatible controller
             product: 82G33/G31 Express Integrated Graphics Controller
             vendor: Intel Corporation
             physical id: 2
             bus info: pci@0000:00:02.0
             version: 10
             width: 32 bits
             clock: 33MHz
             capabilities: msi pm vga_controller bus_master cap_list rom
             configuration: driver=i915 latency=0
             resources: irq:16 memory:fea80000-feafffff ioport:dc00(size=8) memory:e0000000-efffffff memory:fe900000-fe9fffff memory:c0000-dffff


I have to assume that this issue is so rare that it didn't become a release blocker.

Comment 14 Alex Villacís Lasso 2019-11-05 15:57:41 UTC
Discussion on what appears to be this bug at:

https://gitlab.gnome.org/GNOME/mutter/issues/635

Comment 15 Peter Hanecak 2019-11-05 20:45:38 UTC
As per the refrenced GitLab issue 635:

a) If I'm going for Wayland, I get "Failed to initialize accelerated iGPU/dGPU framebuffer sharing: No matching EGL configs" + "Unable to initialize Clutter: Unable to initialize the Clutter backend: no available drivers found." right after it ... and "Ops"

b) If I'm going for X11 ('WaylandEnable=false' in /etc/gdm/custom.conf) then I get just "Unable to initialize Clutter: Unable to initialize the Clutter backend: no available drivers found." right after it ... and "Ops"

Graphics card (`lspci -v`):

00:02.1 Display controller: Intel Corporation 82G33/G31 Express Integrated Graphics Controller (rev 02)
        Subsystem: Holco Enterprise Co, Ltd/Shuttle Computer Device 3106
        Flags: bus master, fast devsel, latency 0
        Memory at fde80000 (32-bit, non-prefetchable) [size=512K]
        Capabilities: [d0] Power Management version 2

Comment 16 Alex Villacís Lasso 2019-11-20 02:47:09 UTC
I compiled my own mutter package with f4f7e31303d78b2a8a0881b61311b8d750301b8f applied on top of mutter-3.34.1-11.fc31.x86_64 , and it completely fixed the gnome-shell problem under i915.

However, there is still the issue that wayland on software rendering should kick in if KMS works but hardware acceleration fails to initialize. And then the X11 fallback after the wayland failure is broken too.

Comment 17 Alex Villacís Lasso 2019-12-10 17:19:05 UTC
Issue still persists with mutter-3.34.1-12.fc31.x86_64 . As before, I compiled f4f7e31303d78b2a8a0881b61311b8d750301b8f on top of the update to fix the bug.

Comment 18 Stefano Biagiotti 2020-01-16 22:49:04 UTC
I hit this same problem after upgrading from f30 to f31.

# LANG=en journalctl -b 0 --no-hostname | grep gnome-shell
Jan 16 21:36:54 gnome-shell[1070]: Failed to initialize accelerated iGPU/dGPU framebuffer sharing: No matching EGL configs
Jan 16 21:36:54 gnome-shell[1070]: Unable to initialize Clutter: Unable to initialize the Clutter backend: no available drivers found.
Jan 16 21:36:54 gnome-shell[1070]: Unable to initialize Clutter.
Jan 16 21:36:54 systemd[847]: gnome-shell-wayland.service: Failed with result 'protocol'.
Jan 16 21:36:54 systemd[847]: gnome-shell-wayland.target: Job gnome-shell-wayland.target/start failed with result 'dependency'.
Jan 16 21:36:54 systemd[847]: gnome-shell-wayland.service: Triggering OnFailure= dependencies.
Jan 16 21:36:58 gnome-shell[1142]: Unable to initialize Clutter: Unable to initialize the Clutter backend: no available drivers found.
Jan 16 21:36:58 gnome-shell[1142]: Unable to initialize Clutter.
Jan 16 21:36:58 systemd[847]: gnome-shell-x11.service: Failed with result 'protocol'.
Jan 16 21:36:58 systemd[847]: gnome-shell-x11.target: Job gnome-shell-x11.target/start failed with result 'dependency'.
Jan 16 21:36:58 systemd[847]: gnome-shell-x11.service: Scheduled restart job, restart counter is at 1.
Jan 16 21:36:58 gnome-shell[1149]: Unable to initialize Clutter: Unable to initialize the Clutter backend: no available drivers found.
Jan 16 21:36:58 gnome-shell[1149]: Unable to initialize Clutter.
Jan 16 21:36:58 systemd[847]: gnome-shell-x11.service: Failed with result 'protocol'.
Jan 16 21:36:58 systemd[847]: gnome-shell-x11.service: Scheduled restart job, restart counter is at 2.
Jan 16 21:36:59 gnome-shell[1155]: Unable to initialize Clutter: Unable to initialize the Clutter backend: no available drivers found.
Jan 16 21:36:59 gnome-shell[1155]: Unable to initialize Clutter.
Jan 16 21:36:59 systemd[847]: gnome-shell-x11.service: Failed with result 'protocol'.
Jan 16 21:36:59 systemd[847]: gnome-shell-x11.service: Scheduled restart job, restart counter is at 3.
Jan 16 21:36:59 systemd[847]: gnome-shell-x11.service: Start request repeated too quickly.
Jan 16 21:36:59 systemd[847]: gnome-shell-x11.service: Failed with result 'protocol'.
Jan 16 21:36:59 systemd[847]: gnome-shell-x11.service: Triggering OnFailure= dependencies.

00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller (rev 03)
	Subsystem: Toshiba Corporation Device ff10
	Kernel driver in use: i915
	Kernel modules: i915

cogl-1.22.4-2.fc31.x86_64
mesa-libEGL-19.2.8-1.fc31.x86_64
mutter-3.34.3-1.fc31.x86_64
gdm-3.34.1-1.fc31.x86_64
gnome-shell-3.34.3-1.fc31.x86_64
kernel-5.4.8-200.fc31.x86_64

Comment 19 Jon Levell 2020-03-07 23:56:52 UTC
A workaround that worked for me (following this comment: https://gitlab.gnome.org/GNOME/mutter/issues/635#note_633110 ):
was to add:
Environment="MESA_GL_VERSION_OVERRIDE=2.1"
to the end of the file:
/usr/lib/systemd/user/gnome-shell-wayland.service.

Comment 20 Villy Kruse 2020-03-08 04:53:16 UTC
(In reply to Jon Levell from comment #19)
> A workaround that worked for me (following this comment:
> https://gitlab.gnome.org/GNOME/mutter/issues/635#note_633110 ):
> was to add:
> Environment="MESA_GL_VERSION_OVERRIDE=2.1"
> to the end of the file:
> /usr/lib/systemd/user/gnome-shell-wayland.service.


Better yet:  Create the file /etc/systemd/user/gnome-shell-wayland.service.d/override.conf
with the following contents.

[Service]
Environment=MESA_GL_VERSION_OVERRIDE=2.1


That change will not be overwritten by the next update.

Comment 21 Paul Dufresne 2020-04-03 08:34:00 UTC
As I have upgraded the computer that was having old Open GL versionon i915, I cannot easily test this issue.

I see upstream https://gitlab.gnome.org/GNOME/mutter/issues/635 have been closed.

Someone able to tell if a workaround is still necessary?

Comment 22 Villy Kruse 2020-04-03 11:47:34 UTC
(In reply to Paul Dufresne from comment #21)
> As I have upgraded the computer that was having old Open GL versionon i915,
> I cannot easily test this issue.
> 
> I see upstream https://gitlab.gnome.org/GNOME/mutter/issues/635 have been
> closed.
> 
> Someone able to tell if a workaround is still necessary?

It is!


I installed the latest gnome updates on Fedora32 beta and I still get the "Oh No" screen.

Comment 23 Paul Dufresne 2020-04-03 14:00:02 UTC
Thanks Villy for testing!

Comment 24 Alex Villacís Lasso 2020-04-03 14:45:31 UTC
In my home computer, I am running Gnome Shell/Wayland using mutter-3.34.5-1.fc31.x86_64  under i915. For me, the first-level issue (mutter/Wayland refusing to start because OpenGLES 2.0 fallback fails) has been fixed. However, the subsequent issues (mutter refusing to run Wayland under software rendering if accelerated output fails, Gnome Shell/mutter randomly refusing to start in Xorg mode if Wayland session fails ) have not been addressed as far as I know.

Comment 25 Stefano Biagiotti 2020-04-08 00:01:22 UTC
I still get the 'Oh No" screen on a fully updated Fedora 31.

apr 08 01:03:31 gnome-shell[1015]: Failed to initialize accelerated iGPU/dGPU framebuffer sharing: No matching EGL configs
apr 08 01:03:32 gnome-shell[1015]: Unable to initialize Clutter: Unable to initialize the Clutter backend: no available drivers found.
apr 08 01:03:32 gnome-shell[1015]: Unable to initialize Clutter.
apr 08 01:03:33 systemd[842]: gnome-shell-wayland.service: Failed with result 'protocol'.
apr 08 01:03:33 systemd[842]: gnome-shell-wayland.target: Job gnome-shell-wayland.target/start failed with result 'dependency'.
apr 08 01:03:33 systemd[842]: gnome-shell-wayland.service: Triggering OnFailure= dependencies.
apr 08 01:03:37 gnome-shell[1104]: Unable to initialize Clutter: Unable to initialize the Clutter backend: no available drivers found.
apr 08 01:03:37 gnome-shell[1104]: Unable to initialize Clutter.
apr 08 01:03:37 systemd[842]: gnome-shell-x11.service: Failed with result 'protocol'.
apr 08 01:03:37 systemd[842]: gnome-shell-x11.target: Job gnome-shell-x11.target/start failed with result 'dependency'.
apr 08 01:03:37 systemd[842]: gnome-shell-x11.service: Scheduled restart job, restart counter is at 1.
apr 08 01:03:38 gnome-shell[1111]: Unable to initialize Clutter: Unable to initialize the Clutter backend: no available drivers found.
apr 08 01:03:38 gnome-shell[1111]: Unable to initialize Clutter.
apr 08 01:03:38 systemd[842]: gnome-shell-x11.service: Failed with result 'protocol'.
apr 08 01:03:38 systemd[842]: gnome-shell-x11.service: Scheduled restart job, restart counter is at 2.
apr 08 01:03:38 gnome-shell[1117]: Unable to initialize Clutter: Unable to initialize the Clutter backend: no available drivers found.
apr 08 01:03:38 gnome-shell[1117]: Unable to initialize Clutter.
apr 08 01:03:38 systemd[842]: gnome-shell-x11.service: Failed with result 'protocol'.
apr 08 01:03:38 systemd[842]: gnome-shell-x11.service: Scheduled restart job, restart counter is at 3.
apr 08 01:03:38 systemd[842]: gnome-shell-x11.service: Start request repeated too quickly.
apr 08 01:03:38 systemd[842]: gnome-shell-x11.service: Failed with result 'protocol'.
apr 08 01:03:38 systemd[842]: gnome-shell-x11.service: Triggering OnFailure= dependencies.

Comment 26 Stefano Biagiotti 2020-04-08 00:45:22 UTC
Hint by Villy Kruse in comment #20 works for me on Fedora 31.

/etc/systemd/user/gnome-shell-wayland.service.d/override.conf
[Service]
Environment=MESA_GL_VERSION_OVERRIDE=2.1

I don't see the 'Oh No' screen anymore and I finally get to the GUI login.

Comment 27 Alex Villacís Lasso 2020-04-20 22:08:19 UTC
(In reply to Villy Kruse from comment #22)
> (In reply to Paul Dufresne from comment #21)
> > As I have upgraded the computer that was having old Open GL versionon i915,
> > I cannot easily test this issue.
> > 
> > I see upstream https://gitlab.gnome.org/GNOME/mutter/issues/635 have been
> > closed.
> > 
> > Someone able to tell if a workaround is still necessary?
> 
> It is!
> 
> 
> I installed the latest gnome updates on Fedora32 beta and I still get the
> "Oh No" screen.

In my machine, when running the Fedora 32 beta x86_64 LiveISO, GNOME Shell/mutter 3.36 has regressed and exhibits this bug again. I have opened a new bug report here: https://gitlab.gnome.org/GNOME/mutter/-/issues/1199

Comment 28 Alex Villacís Lasso 2020-04-21 15:03:53 UTC
This is just a theory about why X11 fallback fails. I am trying to track where the wayland->x11 failover is supposed to happen in Fedora 32, and the logs make me think that when the wayland session fails, the fallback x11 session starts X11, but the gnome-shell executable somehow thinks that it should start again in wayland mode, so it fails again. Then when I run startx, gnome-shell starts up correctly under X11.

Comment 29 Alex Villacís Lasso 2020-05-04 00:45:00 UTC
Still present in Fedora 32 Workstation Live ISO final. Now the trick of starting X11 by hand no longer works.

Comment 30 Alex Villacís Lasso 2020-05-11 16:57:44 UTC
Hmm, I upgraded my machine to Fedora 32 fully intending to work on fixing this particular regression, but now it no longer happens, and GNOME runs "correctly" under Wayland on my machine. Now I have a different bug: https://bugzilla.redhat.com/show_bug.cgi?id=1833856

Comment 31 Konstantin Bukharov 2020-05-22 11:39:01 UTC
After recent updates for Fedora 32 suggested workaround stopped working...

[root@localhost ~]# cat /etc/systemd/user/gnome-shell-wayland.service.d/override.conf
[Service]
Environment=MESA_GL_VERSION_OVERRIDE=2.1

мая 22 14:07:19 localhost.localdomain systemd[1119]: Started Sound Service.
мая 22 14:07:19 localhost.localdomain systemd[1119]: Reached target Main User Target.
мая 22 14:07:19 localhost.localdomain systemd[1119]: Startup finished in 1.329s.
мая 22 14:07:19 localhost.localdomain gnome-shell[1250]: Failed to initialize accelerated iGPU/dGPU framebuffer sharing: No matching EGL configs
мая 22 14:07:19 localhost.localdomain gnome-shell[1250]: Unable to initialize Clutter: Unable to initialize the Clutter backend: no available drivers found.
мая 22 14:07:19 localhost.localdomain gnome-shell[1250]: Unable to initialize Clutter.
мая 22 14:07:19 localhost.localdomain gnome-session[1228]: gnome-session-binary[1228]: WARNING: App 'org.gnome.Shell.desktop' exited with code 1
мая 22 14:07:19 localhost.localdomain gnome-session-binary[1228]: WARNING: App 'org.gnome.Shell.desktop' exited with code 1
мая 22 14:07:19 localhost.localdomain gnome-session-binary[1228]: Unrecoverable failure in required component org.gnome.Shell.desktop
мая 22 14:07:19 localhost.localdomain gdm-launch-environment][1033]: pam_unix(gdm-launch-environment:session): session closed for user gdm

Comment 32 Konstantin Bukharov 2020-05-22 12:13:50 UTC
Update:
I've downloaded mutter-3.36.2-1.fc32.src.rpm and found that f4f7e31303d78b2a8a0881b61311b8d750301b8f is already there.

So I commented out 
# cat /etc/systemd/user/gnome-shell-wayland.service.d/override.conf
#[Service]
#Environment=MESA_GL_VERSION_OVERRIDE=2.1

And gdm started for me.

Comment 33 Alex Villacís Lasso 2020-06-03 19:02:56 UTC
(In reply to Alex Villacís Lasso from comment #28)
> This is just a theory about why X11 fallback fails. I am trying to track
> where the wayland->x11 failover is supposed to happen in Fedora 32, and the
> logs make me think that when the wayland session fails, the fallback x11
> session starts X11, but the gnome-shell executable somehow thinks that it
> should start again in wayland mode, so it fails again. Then when I run
> startx, gnome-shell starts up correctly under X11.

Sorry, wrong theory. See below.

(In reply to Alex Villacís Lasso from comment #30)
> Hmm, I upgraded my machine to Fedora 32 fully intending to work on fixing
> this particular regression, but now it no longer happens, and GNOME runs
> "correctly" under Wayland on my machine. Now I have a different bug:
> https://bugzilla.redhat.com/show_bug.cgi?id=1833856

I have, by chance, stumbled upon the root cause of the Live ISO failure. This is a bug in Mutter, that incorrectly links to libGLESv2.so instead of libGLESv2.so.1. See this report I just opened for details:

https://gitlab.gnome.org/GNOME/mutter/-/issues/1282

If your machine is Intel gen3 or below, and requires the OpenGLES 2.0 fallback to start up, the Fedora 32 Live ISO will fail because the symlink from /usr/lib64/libGLESv2.so to /usr/lib64/libGLESv2.so.1 is missing. This symlink is provided by the libglvnd-devel package.

How to test: remove other workarounds including the environment override. Install the package libglvnd-devel.x86_64 and any dependencies using dnf, then reboot. If this is root cause for you, the GDM screen and the GNOME Shell desktop should now work as intended. In the Fedora Live ISO, this installation is temporary and will not persist if rebooted.

Comment 34 Villy Kruse 2020-06-04 12:39:02 UTC
(In reply to Alex Villacís Lasso from comment #33)


> 
> I have, by chance, stumbled upon the root cause of the Live ISO failure.
> This is a bug in Mutter, that incorrectly links to libGLESv2.so instead of
> libGLESv2.so.1. See this report I just opened for details:
> 
> https://gitlab.gnome.org/GNOME/mutter/-/issues/1282
> 

How did you find it?  There are gazillion error and warning messages generated by gnome, but none of these refers to libGLESv2.

          g_set_error (error, COGL_DRIVER_ERROR,
                       COGL_DRIVER_ERROR_FAILED_TO_LOAD_LIBRARY,
                       "Failed to dynamically open the GL library \"%s\"",
                       libgl_name);

If we got this messages in the log files, this problem could have been solved much sooner.

> If your machine is Intel gen3 or below, and requires the OpenGLES 2.0
> fallback to start up, the Fedora 32 Live ISO will fail because the symlink
> from /usr/lib64/libGLESv2.so to /usr/lib64/libGLESv2.so.1 is missing. This
> symlink is provided by the libglvnd-devel package.
> 
> How to test: remove other workarounds including the environment override.
> Install the package libglvnd-devel.x86_64 and any dependencies using dnf,
> then reboot. If this is root cause for you, the GDM screen and the GNOME
> Shell desktop should now work as intended. In the Fedora Live ISO, this
> installation is temporary and will not persist if rebooted.


Works for me.  Big thanks!

Comment 35 Alex Villacís Lasso 2020-06-15 03:08:26 UTC
The upstream bug report has been closed with commit dfe33897db0989635e4a789290dd2a73da39ca5c on mutter master, yet not backported to the gnome-3-36 branch upstream. Please somebody backport this to the Fedora 32 package. This is an one-line fix, so it should be trivial to review and approve for backporting.

Comment 36 Stefano Biagiotti 2020-06-20 11:09:44 UTC
After upgrading to Fedora 32 I got the "Oh No" screen again.

Hint from Alex Villacis Lasso in comment #33 resolved for me.
I installed libglvnd-devel.x86_64 and everything works again now.
Thank you Alex.

Comment 37 Adam Pribyl 2020-10-13 18:00:29 UTC
This really is unbelievable - 2.5h crowling thru journal flooded with various dbus errors before hitting the right keys to find this report, that points to absolutely stupid bug of missing symlink to library. 

The best thing is that systemd even does not boot to full system with this as gdm fails, leaving user just in front of "Oops, something went wrong" - no console, no sshd. And no this is not related just to a livecd but this happens after update from F30 to F31 desktop installation...

Comment 38 Jonas Ådahl 2020-10-13 18:19:09 UTC
FWIW dfe33897db0989635e4a789290dd2a73da39ca5c has been included since mutter-3.36.6-1.fc32.

Comment 39 Adam Pribyl 2020-10-14 07:27:37 UTC
Ok, so the F31 is left behind? But how should user go from F30->F31->F32 when it Oops in F31 and the system won't start basic services...

Comment 40 Jonas Ådahl 2020-11-17 08:30:34 UTC
Posted an updated with the same commit backported to F31: https://bodhi.fedoraproject.org/updates/FEDORA-2020-89a69b8c42

The original bug was reported against F32, which was already fixed, so lets close this.


Note You need to log in before you can comment on or make changes to this bug.