Bug 99427

Summary: Second GPU not enabled with 1.19 (both Radeon)
Product: xorg Reporter: Stratos Zolotas <strzol>
Component: Server/GeneralAssignee: Xorg Project Team <xorg-team>
Status: RESOLVED MOVED QA Contact: Xorg Project Team <xorg-team>
Severity: major    
Priority: medium CC: renda.krell
Version: unspecified   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Xorg.0.log none

Description Stratos Zolotas 2017-01-16 14:19:29 UTC
Created attachment 128982 [details]
Xorg.0.log

Hello,

After upgrading to server 1.19 on my OpenSUSE Tumbleweed I lost the third monitor connected with VGA on a secondary Radeon GPU. My setup has 2 Radeon GPUs with 2 monitors connected on the primary and one connected on the secondary. Only monitors on the primary GPU are enabled although the secondary GPU is listed on xrandr.

xrandr --listproviders
Providers: number : 2
Provider 0: id: 0x9a cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 2 outputs: 3 associated providers: 0 name:OLAND @ pci:0000:01:00.0
Provider 1: id: 0x54 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 2 outputs: 3 associated providers: 0 name:OLAND @ pci:0000:02:00.0

xrandr -q
Screen 0: minimum 320 x 200, current 3200 x 1080, maximum 16384 x 16384
HDMI-0 connected 1280x1024+1920+0 (normal left inverted right x axis y axis) 341mm x 274mm
   1280x1024     60.02*+  75.02  
   1280x960      60.00  
   1152x864      75.00  
   1024x768      75.03    70.07    60.00  
   832x624       74.55  
   800x600       72.19    75.00    60.32    56.25  
   640x480       75.00    72.81    66.67    59.94  
   720x400       70.08  
DVI-0 disconnected (normal left inverted right x axis y axis)
VGA-0 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 480mm x 270mm
   1920x1080     60.00*+
   1680x1050     59.95  
   1400x1050     59.98  
   1600x900      60.00  
   1280x1024     75.02    60.02  
   1440x900      59.89  
   1280x800      59.81  
   1152x864      75.00  
   1280x720      60.00  
   1024x768      75.03    60.00  
   800x600       75.00    60.32  
   640x480       75.00    59.94  
   720x400       70.08

I tried to remove all files from /etc/X11/xorg.conf.d to force auto-detection without success. I'm attaching the complete Xorg.0.log where the third monitor (on the secondary GPU) seems to be detected.

Is there any way to enable it? It was working as expected before the upgrade.

Thanks.
Comment 1 Stratos Zolotas 2017-01-16 14:52:08 UTC
I managed to fix my issue as follows:

1. I disabled kscreen so I can manage the monitor setup manually with xrandr.
2. I enabled the second GPU with

xrandr --setprovideroutputsource 1 0

3. Fixed my layout with 

xrandr --output VGA-0 --primary --mode 1920x1080 --pos 1280x0 --rotate normal --output DVI-1-1 --off --output HDMI-1-1 --off --output VGA-1-1 --mode 1280x1024 --pos 0x0 --rotate normal --output HDMI-0 --mode 1280x1024 --pos 3200x0 --rotate normal --output DVI-0 --off

4. Added a script on pre KDE startup to perform the above both commands.

Although it works, the secondary GPU should be enabled (if it has a monitor connected) by default and not need to be forced.

If you need any additional debug details I'm willing to provide them.
Comment 2 René Krell 2017-01-20 17:06:19 UTC
I got a similar problem, just with a different hardware (NVidia).
Hardware HP ZBook 15 G2 (Hybrid Graphics: Auto), booting from native UEFI.

The critical update has been Tumbleweed 20170112 (xorg-x11-server 1.19.0 and kernel-default 4.9.0) for me. After that my secondary DVI display connected to the docking station hasn't got any signal any longer. Before that, all has been working with both, nouveau and the native graphics driver.
Now I'm at TW 20170118 (xorg-x11-server 1.19.1, kernel-default 4.9.3) and there is no change.

---
xrandr --listproviders
Providers: number : 2
Provider 0: id: 0xab cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 4 outputs: 3 associated providers: 0 name:Intel
Provider 1: id: 0x66 cap: 0x7, Source Output, Sink Output, Source Offload crtcs: 4 outputs: 3 associated providers: 0 name:nouveau

xrandr -q
Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767
eDP1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 340mm x 190mm
   1920x1080     60.05*+  40.04  
   1400x1050     59.98  
   1600x900      60.00  
   1280x1024     60.02  
   1280x960      60.00  
   1368x768      60.00  
   1280x720      60.00  
   1024x768      60.00  
   1024x576      60.00  
   960x540       60.00  
   800x600       60.32    56.25  
   864x486       60.00  
   640x480       59.94  
   720x405       60.00  
   640x360       60.00  
VGA1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)
rkrell@rkrell:~> xrandr -q
Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767
eDP1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 340mm x 190mm
   1920x1080     60.05*+  40.04  
   1400x1050     59.98  
   1600x900      60.00  
   1280x1024     60.02  
   1280x960      60.00  
   1368x768      60.00  
   1280x720      60.00  
   1024x768      60.00  
   1024x576      60.00  
   960x540       60.00  
   800x600       60.32    56.25  
   864x486       60.00  
   640x480       59.94  
   720x405       60.00  
   640x360       60.00  
VGA1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)
---
Comment 3 René Krell 2017-01-23 12:44:41 UTC
Didn't still work with Tumbleweed 20170120 + stable kernel 4.9.5 (still using X server 1.19.1).

Workaround for me (on an NVidia system):

1. Switch BIOS to Hybrid Graphics: Disabled (from Auto/Enabled)

2. Blacklisting nouveau completely in /etc/modprobe.d:
   ##
   blacklist nouveau
   options nouveau modeset=0
   ##
   plus mkinitrd

3. Install native nvidia driver 375.26:
   ##
   systemctl stop display-manager.service
   ./NVIDIA-Linux-x86_64-375.26.bin

The NVidia X driver auto-configures both displays to be in one X session side by side (Twin-View), which is apparently different from what the open source drivers do.

Even though the original thread has been reported against an AMD chipset the symptoms are very similar. So this seems to be a more general problem (most probably introduced with X Server 1.19.x).
Comment 4 Stratos Zolotas 2017-01-23 12:57:54 UTC
I think also that it is a general problem because I'm on AMD hardware and no hybrid setup, just two distinct AMD GPUs driving 3 monitors and yes it happened after the X server 1.19.0 upgrade. I'm still with the workaround I posted and X server is upgraded to 1.19.1.
Comment 5 GitLab Migration User 2018-12-13 22:37:17 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/xorg/xserver/issues/515.

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.