Wayland not working on optimus laptop on display with proprietary NVIDIA driver.
Affected version
- Your OS and version - Arch Linux
- Affected Mutter version - 3.38.2 (However previously also seamed to not work)
- Does this issue appear in XOrg and/or Wayland - Wayland
Bug summary
I am on an optimums laptop, and I wanted to try out Wayland on nvidia with proprietary drivers (with EGLStreams and no Xwayland acceleration). However if I try to, everything freezes almost immediately.
Steps to reproduce
- Have a display with iGPU and have another display connected to an NVIDIA GPU with proprietary drivers (like on an optimus laptop)
- Enable KMS, comment udev rule.
- Try to launch
What happened
The integrated display (which is wired to the integrated GPU) seams to work for a split second, however then everything just freezes, and ctrl+alt+f* also doesn't work.
The other monitor (which is wired to the dedicated nvidia gpu) never displays anything, just lights up.
If I connect the other monitor to the integrated gpu instead or just not connect it, mutter works.
I am mostly using GNOME Shell, however I also tried running mutter without GNOME Shell and I experienced the exact same behavior.
What did you expect to happen
I expected it not to freeze and work.
Error logs/relevant.
I'm not sure if this is the correct way, however I tried launching mutter from tty and redirecting output to file, and then force rebooting after the freeze.
mutter-Message: 22:09:51.004: Enabling experimental feature 'scale-monitor-framebuffer'
(mutter:1961): mutter-WARNING **: 22:09:51.071: Failed to initialize accelerated iGPU/dGPU framebuffer sharing: Do not want to use software renderer (llvmpipe (LLVM 11.0.0, 256 bits)), falling back to CPU copy path
mutter-Message: 22:09:51.077: Boot VGA GPU /dev/dri/card0 selected as primary
(mutter:1961): mutter-WARNING **: 22:09:52.965: failed to bind to @/tmp/.X11-unix/X1: Address already in use
(mutter:1961): mutter-WARNING **: 22:09:53.038: Lost or failed to acquire name org.gnome.Mutter.ScreenCast
(mutter:1961): mutter-WARNING **: 22:09:53.038: Lost or failed to acquire name org.gnome.Mutter.RemoteDesktop
Also, maybe primary GPU is a problem, that boot_vga is it. I see there's selection very recently merged !1562 (merged). I tried it quite recently and it didn't seam to work, however maybe I was using it wrong. Also maybe it's for GNOME 40, not 3.38.x and that's why.