Bug 110031

Summary: Failure to configure monitors with dc enabled
Product: DRI Reporter: Tom Hughes <tom>
Component: DRM/AMDgpuAssignee: Default DRI bug account <dri-devel>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: medium CC: harry.wentland, nicholas.kazlauskas
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Wayland log
none
X log none

Description Tom Hughes 2019-03-13 12:45:27 UTC
I have a new machine with an RX 570 card and three monitors connected that works with booting with amdgpu.dc=0 but fails to configure the monitors correctly under both Wayland and Gnome when display is enabled (the default).

First the basics of the setup - it's an RX 570 with three monitors, left to right:

  NEC LCD2170NX 1600x1200 rotated 90 degrees and connected to HDMI-A-1
  Dell 3007WFPHC 2560x1600 connected to DVI-1-D
  NEC LCD2170NX 1600x1200 rotated 90 degrees and connected to DP-1

The BIOS initially turns on the left and right monitors but once the kernel starts booting the DVI connected monitor in the middle is turned on as well with all three showing he same image.

By default Gnome tries to start gdm under Wayland but all three screens go blank and the kernel logs a failure to commit the mode change.

Forcing X instead will get the gdm greeter displayed on the right hand screen only but after logging in it's impossible to activate the middle screen though the left hand one can be.

If I boot with the left and right screens physically unplugged (not just turned off) then X will activate the middle monitor and I can then plug the others in and use them successfully. This does not work with Wayland however.

Booting with display core disabled causes everything to work fine under both Wayland and X sessions.

Logs (with amdgpu.dc_log=1 drm.debug=6) for both Wayland and X boots are attached. A summary of some possibly relevant software versions is:

  kernel-4.20.14-200.fc29.x86_64
  libdrm-2.4.97-1.fc29.x86_64
  mesa-dri-drivers-18.3.4-1.fc29.x86_64
  mutter-3.30.2-2.fc29.x86_64
  gnome-shell-3.30.2-1.fc29.x86_64
  xorg-x11-drv-amdgpu-18.1.0-1.fc29.x86_64
  xorg-x11-server-Xorg-1.20.4-1.fc29.x86_64

Hopefully this isn't in completely the wrong place but please do say if you think it should be somewhere else or if there are other tests I should try etc.
Comment 1 Tom Hughes 2019-03-13 12:46:12 UTC
Created attachment 143644 [details]
Wayland log

Log with Gnome using Wayland.
Comment 2 Tom Hughes 2019-03-13 12:46:32 UTC
Created attachment 143645 [details]
X log

Log with Gnome using X.
Comment 3 Nicholas Kazlauskas 2019-03-18 13:35:50 UTC
Please post a dmesg log after booting (preferably after the commit failure occurs) with drm.debug=4 as part of your kernel boot parameters.
Comment 4 Tom Hughes 2019-03-18 13:39:42 UTC
Doesn't the drm.debug=6 that I used before already include 4 as it's a bitmask?
Comment 5 Nicholas Kazlauskas 2019-03-18 13:41:14 UTC
Ah, those were both dmesg logs. Those are sufficient then, thanks!
Comment 6 Tom Hughes 2019-04-30 07:52:41 UTC
Updating to Fedora 30, and with it kernel 5.0.9, seems to have resolved this issue.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.