Bug 106193

Summary: When positioning a monitor output above or below initial configuration with xrandr, hard freeze with graphics artifacts 4.16.2+
Product: DRI Reporter: Joel Sass <sass.joel>
Component: DRM/AMDgpuAssignee: Default DRI bug account <dri-devel>
Status: RESOLVED FIXED QA Contact:
Severity: major    
Priority: medium CC: harry.wentland
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
A picture of the monitor output on failure.
none
[PATCH] drm/amd/display: Disallow enabling CRTC without primary plane with FB
none
amdgpu_dm.c patch I had to manually apply none

Description Joel Sass 2018-04-23 14:09:43 UTC
I'm unable to position my monitors outside of an inline configuration. I have 5 monitors, and if I try to position one outside of an inline configuration with xrandr, it results in a hard lock.

Steps to replicate the process:

$ xrandr --fb 7680x2160

  xrandr --screen 0 output shows that the virtual desktop is set to 7680x2160

$ xrandr --output DP-6 --pos 0x1080

At that point, mouse and keyboard become unresponsive. After about 30 seconds, monitor output shows artifacting. I'll see if I can post an image of what I see.

It appears this also causes all network activity to stop. The system cannot be pinged, and SSH server stops functioning. Seems to have the same issues as https://bugs.freedesktop.org/show_bug.cgi?id=106159 which freezes the system when connecting or disconnecting a displayport cable.
Comment 1 Joel Sass 2018-04-23 14:15:42 UTC
Created attachment 139012 [details]
A picture of the monitor output on failure.
Comment 2 Harry Wentland 2018-04-23 14:18:22 UTC
Created attachment 139013 [details] [review]
[PATCH] drm/amd/display: Disallow enabling CRTC without primary plane with FB

Does this help?
Comment 3 Harry Wentland 2018-04-23 14:19:54 UTC
If the patch doesn't help are you able to capture the dmesg log and post it?
Comment 4 Joel Sass 2018-04-24 20:32:27 UTC
Hey Harry,

Thanks for your help.

Should I be using my current kernel, or just download the newest source to apply these patches against?

Some of the other patches didn't really have the context useful to patch against, and I am not sure if these kernels will have the amdgpu.dc kernel switches.

Thanks!
Comment 5 Harry Wentland 2018-04-25 15:11:17 UTC
I recommend using drm-next-4.18-wip from Alex's tree: https://cgit.freedesktop.org/~agd5f/linux/?h=amd-staging-drm-next

git clone git://people.freedesktop.org/~agd5f/linux
cd linux
git checkout drm-next-4.18-wip

The patch should land on that branch in a couple days.
Comment 6 Joel Sass 2018-04-25 15:27:40 UTC
Harry,

as I had mentioned here https://bugs.freedesktop.org/show_bug.cgi?id=106159 I had to manually apply the patches you'd given me, so I'm including the diff here as well. This has both of the patches in it, so I figured I'd attach it to this bug as well.

Thanks!
Comment 7 Joel Sass 2018-04-25 15:28:03 UTC
Created attachment 139102 [details] [review]
amdgpu_dm.c patch I had to manually apply
Comment 8 Harry Wentland 2018-04-25 15:46:25 UTC
Hi Joel,

does the patch fix the issue?

Thanks for your bug report and testing.

Harry
Comment 9 Joel Sass 2018-04-26 16:10:06 UTC
I can confirm the patch fixed the issue. I installed drm-next-4.17 from git://people.freedesktop.org/~agd5f/linux and the problem is solved.

Good work, and thanks!
Comment 10 Harry Wentland 2018-04-26 17:43:17 UTC
Thanks for reporting, testing, and quick feedback. It's greatly appreciated.

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.