mutter 3.23.90 is built without egl-device support

Bug #1666664 reported by Igor on 2017-02-21
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
mutter (Ubuntu)
Low
Unassigned

Bug Description

New version of mutter (3.23.90) enables support for Nvidia EGLStreams. To use this feature mutter must be configured and built with "--enable-egl-device" option, which enables EGLStreams backend.

Currently, however, mutter is being built with egldevice disabled, which makes it impossible to use wayland with nvidia binary drivers.

I've built the package myself with eglstreams backend enabled and was able to run gnome-shell with wayland on nvidia binary drivers. This, however, rendered xorg session unuseable (for some reason). There were also bunch of segfaults and warnings reported in dmesg.

Igor (invy) on 2017-02-21
summary: - mutter 3.23.90 is built without egl-device option
+ mutter 3.23.90 is built without egl-device support
description: updated
Jeremy Bicha (jbicha) wrote :

Thank you for reaching out on this. I don't use NVIDIA graphics so it's difficult for me to work on problems there.

Could you try to contact the Mutter developers about these issues?

Also, are you using gdm or lightdm? I am embarrassed by LP:#1559576 and LP:#1632322 but I don't know what's wrong and how to fix it.

Igor (invy) wrote :

Mutter developers? Do you mean redhat bugzilla? I think it's ubuntu packaging and/or configuration issue at the moment. Fedora builds this package with egl streams backend. They even backported this feature from 3.23 into 3.22 branch, as I've read at least (correct me if I'm wrong).

Regarding LP:#1559576 and LP:#1632322:

The inability of gdm3 to start is caused by crash in gnome-shell/mutter:
   97.316787] gnome-shell[2436]: segfault at 28 ip 00007f6721c4e614 sp 00007ffc94b6bd40 error 4 in libmutter-0.so.0.0.0[7f6721c07000+12e000]

After this crash gdm3 cannot find one of the services registered by gnome via dbus and fails.

I've also found kinda 'workaround', which enables me to start gdm3 (manually): After gdm3 fails to start I can log in via tty, execute "sudo lightdm --test-mode", and then terminate it. After this action gdm3 starts perfectly fine.

The interesting fact is also, that when mutter is built with eglstreams backend, it starts perfectly fine. The gnome-shell (same as above) occurs much later, when I try to log in into gnome-shell xorg session.

This (or similar) crash can be found in several tickets in bugzilla.

This workaround and the fact, that gdm3 starts with wayland points me to an idea, that the problem is somewhere in the system initialization/configuration.

I didn't had much time to investigate this issue further.

Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in mutter (Ubuntu):
status: New → Confirmed
Jeremy Bicha (jbicha) wrote :

By "Mutter developers", I meant GNOME so either bugzilla.gnome.org product mutter or #gnome-shell on irc.gnome.org.

Could you post the bugzilla links you found might be related?

See also https://blogs.gnome.org/uraeus/2016/11/01/discrete-graphics-and-fedora-workstation-25/

And I just opened LP: #1670379 to ping the Ubuntu developer who packages NVIDIA drivers.

I don't want to regress X support so based on your report, I'm hesitant to enable the configure option you suggested.

Igor (invy) wrote :

Regarding X regression, it's actually not a problem: By default nvidia drivers disable modesetting, and when modesetting is disabled, gnome-shell with gdm fail to load in wayland mode, falling back to Xorg and we are back with LP:#1559576 and LP:#1632322.

If modesetting is enabled, then gdm starts during boot in the Wayland mode, but when you try to login in gnome-shell Xorg dession, it crashes the same way as in those two tickets.

This is definitely an initialization problem. Maybe it has something to do with the fact, that Xorg starting in rootless mode and some changes are needed?

Jeremy Bicha (jbicha) wrote :

Igor, do you have xserver-xorg-legacy installed? If not, could you install it and see if that fixes LP: #1559576 for you?

Igor (invy) wrote :

Jeremy, no I didn't have it installed. Installation of this package did fix the problem.

Jeremy Bicha (jbicha) wrote :

Ok, please clarify then.

I can build mutter with --enable-egl-device with no apparent regressions?

Igor (invy) wrote :

As long as modesetting is disabled in /etc/modprobe.d/nvidia-graphics-drivers.conf (which it is by default), there are no regressions.

If modesetting is enabled for nvidia driver, gdm starts in wayland mode and fails to run gnome-shell (because it starts xorg in rootless mode itself).

Jeremy Bicha (jbicha) wrote :

Ok, I enabled this. Please try out the package once it's built and available.

Could you open a new bug for the modesetting issue?

https://launchpad.net/ubuntu/+source/mutter/3.23.91-0ubuntu2

Changed in mutter (Ubuntu):
status: Confirmed → Fix Committed
importance: Undecided → Low
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package mutter - 3.23.91-0ubuntu2

---------------
mutter (3.23.91-0ubuntu2) zesty; urgency=medium

  * debian/rules:
    - Build with --enable-egl-device (LP: #1666664)
      This enables experimental support for using NVIDIA proprietary
      drivers with GNOME on Wayland

 -- Jeremy Bicha <email address hidden> Fri, 10 Mar 2017 09:59:32 -0500

Changed in mutter (Ubuntu):
status: Fix Committed → Fix Released
Jeremy Bicha (jbicha) wrote :

Do XWayland apps work for you? Like Firefox?

Igor (invy) wrote :

XWayland application do work, but with bugs: color palette is very strange (some channels are apparently inerted). Also application, requiring GLX do not work,

Igor (invy) wrote :

Created a bug report for nvidia driver:
LP: #1672033

Jeremy Bicha (jbicha) wrote :

Can you give me an example of an app that requires GLX that doesn't work on Wayland for you?

The color bug is probably LP: #1670910

Igor (invy) wrote :

simpliest ones: glxinfo, glxgears

Igor (invy) wrote :

ticked about BGRA:

LP: #1672063

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers