Bug 199917

Summary: Stack dump with amdgpu.dc=1 the instant FreeSync is enabled in the connected display.
Product: Drivers Reporter: Nicholas Johnson (nicholas.johnson-opensource)
Component: Video(DRI - non Intel)Assignee: drivers_video-dri
Status: NEW ---    
Severity: normal CC: harry.wentland, nicholas.johnson-opensource
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 4.17.0-041700-generic Subsystem:
Regression: No Bisected commit-id:
Attachments: dmesg output and the error starts on the line with "Jun 4 13:26" in it
Output of dmesg, bug starts on line with "Jun 5 09:13" when I enabled FreeSync in monitor menu settings

Description Nicholas Johnson 2018-06-04 05:49:03 UTC
Created attachment 276315 [details]
dmesg output and the error starts on the line with "Jun 4 13:26" in it

My hardware:

Dell XPS 9370 (i7-8650U, 16GB RAM) - although should be reproducible on any system with two Thunderbolt 3 ports.
Gigabyte Aorus Thunderbolt Gaming Box external graphics with AMD Radeon R9 Nano installed - should be reproducible with any R9 Fury (Fiji) series.
VBIOS is UEFI GOP, laptop BIOS up to date
Monitor is Samsung U32E850R with FreeSync support - although any FreeSync monitor should be sufficient.
4.17 kernel enables amdgpu.dc=1 by default, but on previous kernels, you have to pass it explicitly.

There is a separate bug with getting the GPU posted when on Thunderbolt - ATOM BIOS loop. However, trying again with the other Thunderbolt port on the computer than the one with which you first attempted, works.

Once approved, I can mess around with Xorg conf (seriously, why does Xorg have to be so difficult?) and get the lightdm / Cinnamon running on the external GPU with Intel graphics ignored. This is with FreeSync disabled in the monitor settings. No issues, no errors in dmesg. However, when I enable FreeSync in the monitor menu, when the video signal returns, dmesg has spewed a barrage of errors, as attached in the file (starting from the line containing "Jun 4 13:26" - search without quotes. That line was when I first enabled FreeSync.

Passing amdgpu.dc=0 eliminates this particular problem. There are a lot more problems for AMD to fix, though.

It is unknown of yet if this error is specific to Thunderbolt only, or if it also happens with the same Radeon GPU installed inside of a desktop. Either way, the AMDGPU DC is not ready for prime time, and should not have been enabled by default until tested properly.
Comment 1 Nicholas Johnson 2018-06-04 05:54:09 UTC
On the first stack dump, it says not tainted, and then on the following ones, it says tainted. Can having a stack dump taint the kernel? Either way, I had not modified the kernel or loaded any out of tree modules, and it was not tainted until the error occurred.
Comment 2 Nicholas Johnson 2018-06-05 01:20:41 UTC
Okay, tried with AMD R9 Nano inserted into a desktop PC with same config as laptop - one display on Intel GPU, FreeSync display on Radeon, except this time, it is in an internal PCIe slot (no Thunderbolt).

Same bug. Will attach new dmesg output. The line containing "Jun 5 09:12" is when I enabled FreeSync in the U32E850R monitor's menu.

So it has nothing to do with Thunderbolt external graphics. This is a bug for anybody with Radeon and FreeSync monitor.
Comment 3 Nicholas Johnson 2018-06-05 01:22:30 UTC
Created attachment 276325 [details]
Output of dmesg, bug starts on line with "Jun 5 09:13" when I enabled FreeSync in monitor menu settings