Bug 2052940 - mutter as a Wayland compositor aborts on hybrid gfx with the NVIDIA proprietary driver
Summary: mutter as a Wayland compositor aborts on hybrid gfx with the NVIDIA proprieta...
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Enterprise Linux 9
Classification: Red Hat
Component: mutter
Version: 9.0
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: ---
Assignee: Jonas Ådahl
QA Contact: Peter Kopec
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2022-02-10 10:09 UTC by Olivier Fourdan
Modified: 2023-08-10 07:28 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2023-08-10 07:28:33 UTC
Type: Bug
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
gdb backtrace of the abort (7.79 KB, text/plain)
2022-02-10 10:09 UTC, Olivier Fourdan
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker RHELPLAN-111817 0 None None None 2022-02-10 10:23:03 UTC

Description Olivier Fourdan 2022-02-10 10:09:05 UTC
Created attachment 1860308 [details]
gdb backtrace of the abort

Description of problem:

On a system with hybrid graphics, using the NVIDIA proprietary driver for the discrete GPU, attaching an external display wired to the discrete GPU will cause GNOME Shell as a Wayland compositor to abort.

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

mutter-40.8-2.el9.x86_64

How reproducible:

Always

Steps to Reproduce:
1. Install the NVIDIA proprietary driver on a hybrid graphcs laptop
2. Start a GNOME Shell Wayland session
3. Connect an external display

Actual results:

The user session is terminated as mutter abort.

Expected results:

The session survives.

Additional info:

mutter abort because it fails to allocate the onscreen framebuffer, which in mutter from GNOME 40 is a g_error(), hence the abort.

See attachment for the backtrace.

Also worth noting that mutter from GNOME 41 would not abort in this case, but the external display won't work, but at least the user session is not killed.

Comment 2 Jonas Ådahl 2023-07-11 09:32:16 UTC
> Failed to allocate onscreen framebuffer: Failed to create gbm_surface: Timer expired

So as you say, we can change the abort() to broken behavior. Not sure this should be prioritized since Wayland is disabled for hybrid graphics setups.

Comment 3 RHEL Program Management 2023-08-10 07:28:33 UTC
After evaluating this issue, there are no plans to address it further or fix it in an upcoming release.  Therefore, it is being closed.  If plans change such that this issue will be fixed in an upcoming release, then the bug can be reopened.


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