Bug 107253 - Multi-screen xrandr setup results in distorted/choppy output
Summary: Multi-screen xrandr setup results in distorted/choppy output
Status: RESOLVED DUPLICATE of bug 100086
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/Radeon (show other bugs)
Version: git
Hardware: x86-64 (AMD64) Linux (All)
: medium major
Assignee: xf86-video-ati maintainers
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-07-17 03:50 UTC by casualfred
Modified: 2018-07-31 19:16 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
Log of my X session when I experienced the problem. (142.54 KB, text/plain)
2018-07-17 03:50 UTC, casualfred
no flags Details
Xorg.0.log with modesetting driver (62.92 KB, text/plain)
2018-07-18 01:04 UTC, casualfred
no flags Details

Description casualfred 2018-07-17 03:50:05 UTC
Created attachment 140659 [details]
Log of my X session when I experienced the problem.

Overview
--------------
My system is slackware-current, up to date. I am using two graphics cards. One is an integrated Intel HD Graphics 530 (as reported by Xorg.0.log), using the 'intel' driver, and the other is a Radeon R7 360, using the 'radeon' driver.

First starting X, with no manually-set settings in xorg.conf or anything, my primary display, attached to the Radeon, comes up successfully, and my secondary display, attached to the onboard graphics, is blank. I, then, configure my displays with xrandr (details below) to have a multi-screen setup. My secondary screen comes up successfully, but my main display becomes distorted and choppy. It's like the screen got split into many cubes and scrambled. The mouse still works over both screens, however.

Steps to Reproduce
---------------------
1) Start X normally with no manually-set settings.

2) Run "xrandr --listproviders" to see the ID's of my two graphics cards. This output:

Providers: number : 2
Provider 0: id: 0xc8 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 6 outputs: 3 associated providers: 0 name:BONAIRE @ pci:0000:01:00.0
Provider 1: id: 0x48 cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 4 outputs: 5 associated providers: 0 name:Intel

3) Run 'xrandr --setprovideroutputsource "0x48" "0xc8"' to be able to work with both of my graphics cards at the same time.

4) Run "xrandr --output DP1 --pos 0x88 --mode 1024x768 --output DVI-0 --primary --pos 1024x0" to create the multi-screen setup.

Actual Results
------------------
The secondary display, attached to the onboard graphics, comes up properly, while the primary display, attached to the Radeon card, becomes distorted.

Expected Results
-------------------
Both displays should come up without distortion.

Build Date & Hardware
-----------------------
Built the xf86-video-ati driver today, 16 July 2018, from the latest git commit - d9a139bc6d453d33593685de67d1425611f3ab6f on 64-bit slackware-current. This showed distortion.

Additional Builds and Platforms
--------------------------------
The latest build of this driver distributed for slackware-current as of today was built 11 July 2018 from git commit f533b1f654952cee794de49d28d01947a6571daf. This showed distortion.

Going back and rebuilding the latest tag release, 18.0.1 (which is the previous version used by slackware-current) - this worked properly, and no screen showed distortion.

Additional Information
-------------------------
I double-checked, and changing only the version of xf86-video-ati I was using from 18.0.1 to later git versions is the only variable that changed in my Linux setup. Therefore, I believe that git versions of the radeon driver later than 18.0.1 cause the problem I am experiencing.

Interestingly enough, when I attempted to take a screenshot of my distorted screen using Gimp, the screenshot turned out fine, revealing my normal desktop.

I also attached my Xorg.0.log from after starting my multi-monitor setup and receiving the distorted results. There are no errors recorded, however, that I can tell.
Comment 1 Michel Dänzer 2018-07-17 08:00:19 UTC
Until this is fixed in xf86-video-intel, it should work with the modesetting driver instead.

*** This bug has been marked as a duplicate of bug 100086 ***
Comment 2 bastian.beischer 2018-07-17 08:51:39 UTC
For me the modesetting driver doesn't work either, I get:

$ xrandr --verbose --output DP-1-3 --right-of LVDS-1 --auto       

crtc 2:    1920x1200  59.95 +1920+0 "DP-1-3"
xrandr: Configure crtc 2 failed
crtc 0: disable
crtc 1: disable
crtc 2: disable
crtc 3: disable
screen 0: revert
crtc 0: revert
crtc 1: revert
crtc 2: revert
crtc 3: revert

Although that might be a separate bug.

This bug, too, only happens with X server 1.20, with the previous version there was no problem.

At the moment I can't get multi-monitor to work with PRIME with 1.20, no matter which driver, so I have reverted to 1.19.
Comment 3 Michel Dänzer 2018-07-17 09:05:07 UTC
(In reply to bastian.beischer from comment #2)
> For me the modesetting driver doesn't work either, I get:
> 
> $ xrandr --verbose --output DP-1-3 --right-of LVDS-1 --auto       
> 
> crtc 2:    1920x1200  59.95 +1920+0 "DP-1-3"
> xrandr: Configure crtc 2 failed

Can you attach the corresponding Xorg log file captured after the failure?
Comment 4 Michel Dänzer 2018-07-17 09:16:28 UTC
Trying this with modesetting, I'm still running into the modesetting issue described in https://bugs.freedesktop.org/show_bug.cgi?id=101998#c37 .
Comment 5 casualfred 2018-07-18 01:04:50 UTC
Created attachment 140680 [details]
Xorg.0.log with modesetting driver

Thanks for your reply!

I reinstalled the 11 July 2018, f533b1f6... commit of xf86-video-ati, and, just FYI, I had the 1 June 2018, 3d395062... commit of xf86-video-intel installed.

To test my setup with the modesetting driver for my integrated Intel graphics, I simply uninstalled the xf86-video-intel driver package and rebooted. I had to change my xrandr commands slightly, as my cards had different provider ID's, but it looks like I'm still running into exactly the same result as I described above. X doesn't crash, but my primary screen becomes boxy and scrambled.

The "xrandr --listproviders" command reported:

Providers: number : 2
Provider 0: id: 0x95 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 6 outputs: 3 associated providers: 1 name:BONAIRE @ pci:0000:01:00.0
Provider 1: id: 0x46 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 3 outputs: 4 associated providers: 1 name:modesetting

I have also attached the Xorg.0.log from this session.
Comment 6 bastian.beischer 2018-07-31 19:16:24 UTC
(In reply to Michel Dänzer from comment #3)
> (In reply to bastian.beischer from comment #2)
> > For me the modesetting driver doesn't work either, I get:
> > 
> > $ xrandr --verbose --output DP-1-3 --right-of LVDS-1 --auto       
> > 
> > crtc 2:    1920x1200  59.95 +1920+0 "DP-1-3"
> > xrandr: Configure crtc 2 failed
> 
> Can you attach the corresponding Xorg log file captured after the failure?

(Sorry I didn't see your message since I was subscribed to this bug report.)

I was able to get multiple monitors to work with PRIME using modesetting for intel and nouveau for the NVIDIA card using X 1.20. The trick was to assign drivers based on the BusID. The above error occurs when using modesetting for both cards.

Tomorrow I can attach the Xorg log file with both cards using modesetting, should I open a new bug for that?


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.