Screen-sharing doesn't work on a Wayland session with Nouveau driver
System information:
- GPUs: Nvidia GTX 650, Nvidia GT 710
- Driver: Nouveau
- Distro: Fedora Silverblue 39 beta
- Kernel: Linux 6.5.5-300.fc39.x86_64
- Mesa version: 23.2.1
- Mutter version: 45.0-5.fc39.x86_64
- Session: Wayland
Where screen-sharing doesn't work:
- GNOME Shell recorder
- WebRTC screen-sharing (tested with Firefox 108)
- OBS Studio with the "Screen Capture (Pipewire)" source.
What happens exactly:
Black output like on the screenshot below:
dmesg logs (more in the attachment)
[ 1879.322471] nouveau 0000:01:00.0: gr: DATA_ERROR 0000009c [] ch 6 [003fa58000 gnome-shell[6288]] subc 0 class a097 mthd 17e0 data 00000024
[ 1879.322486] nouveau 0000:01:00.0: fifo: event: ntfy 00000001 on 0
[ 1879.322502] nouveau 0000:01:00.0: gr: DATA_ERROR 0000009c [] ch 6 [003fa58000 gnome-shell[6288]] subc 0 class a097 mthd 17e0 data 0000000c
[ 1879.322517] nouveau 0000:01:00.0: fifo: event: ntfy 00000001 on 0
[ 1879.322532] nouveau 0000:01:00.0: gr: DATA_ERROR 0000009c [] ch 6 [003fa58000 gnome-shell[6288]] subc 0 class a097 mthd 17e0 data 00000024
[ 1879.322547] nouveau 0000:01:00.0: fifo: event: ntfy 00000001 on 0
[ 1879.322563] nouveau 0000:01:00.0: gr: DATA_ERROR 0000009c [] ch 6 [003fa58000 gnome-shell[6288]] subc 0 class a097 mthd 0d78 data 00000004
[ 1879.322578] nouveau 0000:01:00.0: fifo: event: ntfy 00000001 on 0
Where screen-sharing works:
- KWin compositor (KDE Plasma): everywhere
- wlroots compositor (Sway): everywhere
- Mutter + patch/hack to force MemFD usage: everywhere (but with noticeably lower FPS)
- Mutter 44: only for the "ASHPD Demo" and GNOME Shell recorder
- Mutter 45: only for the "ASHPD Demo"