Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1375247 - gdm should fallback to Xorg on laptops with 2 gpu-s
Summary: gdm should fallback to Xorg on laptops with 2 gpu-s
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: mutter
Version: 25
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Florian Müllner
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-09-12 14:25 UTC by Hans de Goede
Modified: 2016-11-24 13:44 UTC (History)
6 users (show)

Fixed In Version: mutter-3.22.1-4.fc25
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-10-22 04:00:50 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Hans de Goede 2016-09-12 14:25:24 UTC
Hi,

Since wayland does not yet support prime and esp. not slave outputs, gdm really should fallback to Xorg if there are 2 /dev/dri/card# devices. Otherwise external connectors on laptops which are only connected to the discrete gpu will not be usable (without manually switching to a gnome on xorg session).

I guess this has been a problem wrt the login screen not showing on such external displays for a while now, but although for the login screen this typically is not a big problem, this is a problem with the actual gnome-session, think e.g. not being able to use a projector on conferences because of this.

Regards,

Hans

Comment 1 Hans de Goede 2016-09-14 17:13:33 UTC
Filed upstream as:
https://bugzilla.gnome.org/show_bug.cgi?id=771442

Lets track this there.

Comment 2 Ray Strode [halfline] 2016-10-19 19:50:15 UTC
let's use this bug to track the bodhi update

Comment 3 Fedora Update System 2016-10-20 22:56:47 UTC
mutter-3.22.1-4.fc25 has been pushed to the Fedora 25 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-018689d0e7

Comment 4 Fedora Update System 2016-10-22 04:00:50 UTC
mutter-3.22.1-4.fc25 has been pushed to the Fedora 25 stable repository. If problems still persist, please make note of it in this bug report.

Comment 5 Bill 2016-10-22 10:33:47 UTC
Well it's a problem for me as I can no longer run gnome on wayland session on my Dell Latitude E6540 (intel + AMD hybrid graphics).
 
Whereas it was working fine before this update, even with an external monitor plugged in.

Comment 6 Ray Strode [halfline] 2016-10-24 13:52:53 UTC
I'm sorry that things stopped working for you.  This suggests that there are some connectors on your laptop that are only hooked up to the AMD card.

Can you post the output of

ls /sys/class/drm/*

?

As a near term workaround, you can put MUTTER_ALLOW_HYBRID_GPUS=1 in /etc/environment and it should revert to the old behavior.

Comment 7 Hans de Goede 2016-10-24 14:03:35 UTC
(In reply to Ray Strode [halfline] from comment #6)
> I'm sorry that things stopped working for you.  This suggests that there are
> some connectors on your laptop that are only hooked up to the AMD card.

Or they are connected via a mux, so both GPUs will appear to have connectors at the drm driver level, but only outputs connected to the primary GPU (the one selected in the BIOS as default) are routed to the outside.

I'm afraid that there is no way to detect this, the mux routing (if there is a mux) cannot be determined via any known means. So people with a mux will typically see a ton of connectors in xrandr and only be able
to plug cables into some of them.

I do believe that falling back to Xorg by default is the right thing to do here, since we simply do not know if there are external connectors routed only to the secondary GPU and we don't want people to end up being unable to plug a projector into their laptop.

One good thing here is that (judging from my limited sample set) more and more laptops seem to forgo the mux and there the dgpu does typically report 0 outputs.

Comment 8 Bill 2016-10-24 18:59:47 UTC
FYI - here is the output of ls /sys/class/drm/*


/sys/class/drm/version

/sys/class/drm/card0:
card0-VGA-2  dev  device  power  subsystem  uevent

/sys/class/drm/card0-VGA-2:
device  dpms  edid  enabled  modes  power  status  subsystem  uevent

/sys/class/drm/card1:
card1-DP-1      card1-HDMI-A-3  gt_act_freq_mhz  gt_RP1_freq_mhz  uevent
card1-DP-2      card1-VGA-1     gt_cur_freq_mhz  gt_RPn_freq_mhz
card1-eDP-1     dev             gt_max_freq_mhz  l3_parity
card1-HDMI-A-1  device          gt_min_freq_mhz  power
card1-HDMI-A-2  error           gt_RP0_freq_mhz  subsystem

/sys/class/drm/card1-DP-1:
device  drm_dp_aux1  enabled  modes  status     uevent
dpms    edid         i2c-15   power  subsystem

/sys/class/drm/card1-DP-2:
device  drm_dp_aux2  enabled  modes  status     uevent
dpms    edid         i2c-16   power  subsystem

/sys/class/drm/card1-eDP-1:
device  drm_dp_aux0  enabled  intel_backlight  power   subsystem
dpms    edid         i2c-14   modes            status  uevent

/sys/class/drm/card1-HDMI-A-1:
device  dpms  edid  enabled  modes  power  status  subsystem  uevent

/sys/class/drm/card1-HDMI-A-2:
device  dpms  edid  enabled  modes  power  status  subsystem  uevent

/sys/class/drm/card1-HDMI-A-3:
device  dpms  edid  enabled  modes  power  status  subsystem  uevent

/sys/class/drm/card1-VGA-1:
device  dpms  edid  enabled  modes  power  status  subsystem  uevent

/sys/class/drm/controlD64:
dev  device  power  subsystem  uevent

/sys/class/drm/controlD65:
dev  device  power  subsystem  uevent

/sys/class/drm/renderD128:
dev  device  power  subsystem  uevent

/sys/class/drm/renderD129:
dev  device  power  subsystem  uevent

/sys/class/drm/ttm:
buffer_objects  memory_accounting  power  subsystem  uevent


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