5700XT Multiple (More Than 4) Monitors Freeze/Crash Issues
Brief summary of the problem:
When connecting more than 4 Monitors to a 5700XT (and possibly other Navi variants - untested) The system will hang/freeze for a bit, and become unusable. This has been reported by other users, but specifically referencing the AsRock Taichi model- they did not seem aware this is an issue with at least all 5700XT cards. The display output freezes and will not change, and ctrl+alt+F# does not take you to a new TTY as expected. The kernel does not panic, though there are some DMESG error relating to the amdgpu driver. Debugging this a bit seems to indicate an issue with the 'GPU Flip State' though I am unsure as to what that means. I can still SSH into the box when this happens, but all graphical output is frozen. This is happening across many different software and a couple hardware configurations. This does not happen with an older RX580. Everything works as expected in Windows 10.
System 1 (system 2/system 2 after upgrade)
- CPU: Ryzen 7 1700X (Intel i5 4670K/Ryzen 5 2500X)
- GPU: MSI RX 5700XT EVOKE (Asus ROG 5700XT STRIX)
- System Memory: 32GB DDR4-3400 (8GB DDR3-1333/16GB DDR4-3200)
- Display(s): 1x2160p@60hz, 1x1440p@95hz, 6 different 1080p@60hz displays
- Type of Diplay Connection: A mix of DP and HDMI. Numbers of each changed for testing purposes. Attempted using passive and active DP to HDMI connectors, DP 1.2 MST hub, etc to no effect. I also attached an external Sabrent USB-2011 USb-To-DVI adapter (which uses DisplayLink’s DL-195 USB 2.0 graphics chipset) and it still resulted int he same issue, despite technically being a second graphics card. I tried just the 1080p monitors as well to rule out a maximum resolution issue- it did not matter if if the displays were 2k, 4k, or 1080p.
- Distro name and Version: Fedora, 30-32, Ubuntu 18.04 and 20.04, PopOS (whatever the latest). Live USB and fully installed and updated versions of these. Tested X11 and Wayland. XFCE, Gnome, KDE, LXDE, and Whatever Ubuntu's default DE is.
- Kernel version: Various, up though 5.7.8-200.fc32.x86_64. I believe as old as 5.4
- Custom kernel: N/A
- AMD package version: (not sure if this is what is being asked, but using the OpenSource amdgpu driver. I will list the newest versions I have tested): AMD NAVI10 (DRM 3.37.0 5.7.8-200.fc32.x86_64 LLVM 10.0.0) 4.6 Mesa 20.1.2
How to reproduce the issue:
- Have a system with a 5700XT graphics card
- Plug in a 5th (or more) monitor, or boot with that many already plugged in
- Note - For a card other than the ASRock Taichi version, you will have to use DP daisy-chaining or an MST hub to connect more than 4 monitors without a second card of some sort, as the card only has 4 outputs.
- Can attach a few slightly older Dmesg logs. Same behaviour still, but I can post a newer log if needed.
- First log is with only 4 monitors attached. Second is after a 5th was attached. Third log is after a 6th monitor was attached, all during the same boot. Retrieved via ssh, as the system was still running. The 4th log I believe is the issue still happening after a couple kernel updates. I am aware these are a little older now, but the behaviour is identical on my fully up-to-date Fedora 32 system.