Fact is stranger than fiction. I failed to consider that maybe
EGLStreams was working in mutter 3.28 and it got broken later on.
Actually there were TWO separate regressions (separate to this bug) this
year. So here are corrections to comment #8 after a more detailed
analysis:

mutter 3.28.3 in 18.04:
  * EGLDevice configured, compiled, but not working (this bug)
  * EGLStreams not configurable, always built, but also not working (this bug)

mutter 3.28.4 (prerelease):
  * EGLDevice compiled and working
  * EGLStreams not configurable, always built, and working**

mutter 3.30.2 in 18.10 & 19.04:
  * EGLDevice compiled and working
  * EGLStreams' new build deps are missing so not configured, but compiled in 
anyway by accident because the new build deps were weak, and it's working**

mutter 3.32 (prerelease) from upstream git:
  * EGLDevice compiled and working
  * EGLStreams' new build deps are missing so not configured, and not compiled 
any more thanks to a recent "fix" 417c00b8fa. We can get the missing build deps 
either with libnvidia-egl-wayland-dev (soon-to-be in 19.04), or do some kind of 
revert of 417c00b8fa (because the new build deps are pretty weak and probably 
shouldn't have been implemented that way in mutter 3.30+).

** EGLStreams working means Wayland clients get full Nvidia acceleration
but I thought it was broken for a while because that also includes 100%
CPU use by [kworker/u16:3+events_unbound]. Possible driver bug?

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to mutter in Ubuntu.
https://bugs.launchpad.net/bugs/1805444

Title:
  [nvidia] Fail to launch gnome-shell (Wayland) on Ubuntu with EGLDevice
  backend

Status in mutter package in Ubuntu:
  Fix Released

Bug description:
  Wayland sessions don't work with the Nvidia driver in 18.04, even
  after enabling them via the kernel command line 'nvidia-
  drm.modeset=1'.

  [Original description]
  Fail to launch gnome-wayland-shell on Ubuntu-18.04 with EGLDevice backend due 
to following missing changes in mutter 3.28.3-2~ubuntu18.04.2

  commit 1bf2eb95b502ed0419b0fe8979c022cacaf79e84
  Author: Miguel A. Vico <mvicom...@nvidia.com>
  Date:   Thu Jun 7 16:29:44 2018 -0700

  renderer/native: Choose first EGL config for non-GBM backends

  Commit 712ec30cd9be1f180c3789e7e6a042c5f7b5781d added the logic to only
  choose EGL configs that match the GBM_FORMAT_XRGB8888 pixel format.
  However, there won't be any EGL config satisfying such criteria for
  non-GBM backends, such as EGLDevice.

  This change will let us choose the first EGL config for the EGLDevice
  backend, while still forcing GBM_FORMAT_XRGB8888 configs for the GBM
  one.

  Related to: https://gitlab.gnome.org/GNOME/mutter/issues/2

  commit 8ee14a7cb7e8f072d2731d59c7dc735f83a9bb0b
  Author: Jonas Ã…dahl <jad...@gmail.com>
  Date:   Tue Nov 14 16:08:52 2017 +0800

  renderer/native: Also wrap flip closures for EGLStreams

  When using the EGLStream backend, the MetaRendererNative passed a
  GClosure to KMS when using EGLStreams, but KMS flip callback event
  handler in meta-gpu-kms.c expected a closure wrapped in a closure
  container, meaning it'd instead crash when using EGLStreams. Make the
  flip handler get what it expects also when using EGLStreams by wrapping
  the flip closure in the container before handing it over to EGL.

  https://bugzilla.gnome.org/show_bug.cgi?id=790316

  apt-cache policy mutter
  mutter:
  Installed: 3.28.3-2~ubuntu18.04.2
  Candidate: 3.28.3-2~ubuntu18.04.2
  Version table:
  *** 3.28.3-2~ubuntu18.04.2 500
  500 http://ports.ubuntu.com/ubuntu-ports bionic-updates/main arm64 Packages
  100 /var/lib/dpkg/status
  3.28.1-1ubuntu1 500
  500 http://ports.ubuntu.com/ubuntu-ports bionic/main arm64 Packages

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/mutter/+bug/1805444/+subscriptions

-- 
Mailing list: https://launchpad.net/~desktop-packages
Post to     : desktop-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~desktop-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to