Troubleshooting flaky multi monitor setup with RX 9060 XT
This was originally tooted a while ago.
I "recently" moved my Radeon RX 9060 XT GPU from my Windows gaming PC to my Linux box so I could test how well games run under Proton. There was just one extremely annoying problem: if I had both of my monitors connected, one of them would repeatedly disconnect. There was no system logs or dmesg output, monitor just flickers. Everything worked in previous PC: same monitors and same cables, just different OS.
So I have been running with only one monitor for while because games have been running really well on this machine (even though CPU and RAM are not near as good as the ones in the Windows box). Which is lovely! But this monitor situation has been bothering me more and more as time went on.
Debugging these kind of display problems is bit painful for me as flickering monitors can trigger migraine and low refresh rates trigger dyslexia.. which in turn can trigger migraines. So I kinda had to collect some spoons and annoyance/spite for debugging to happen. Well, spite was collected and it was time to collect some observations:
- one of the monitors started flickering, not both of them
- display refresh rate list was bit weird looking 143.98, 120, 59.95
- having same/different refresh rates didn't have effect
- curiously having 59.95 on both monitors stopped monitor disconnecting!
- everything above repeats on KDE and Gnome, both on Wayland
This was not solution though, I can't stand the sluggish cursor with 60hz refresh rate and it is absolutely no-go for games. It would also tire my eyes quicker -> migraine territory.
So now hypothesis was that maybe the GPU cannot keep the refresh rate stable and monitor does not like it? This could also explain why there was no log output, issue happens at too low level for default logging? Time to enable "variable refresh" in monitor settings and put "adaptive sync - always" on. Idea was that if refresh rate doesn't stay stable but monitor somewhat expects this, it might be fine?
....aaaaaand this seems to work? So far there hasn't been monitor flickering/disconnecting. Been running these settings for about a month now and there has been no issues, even under heavy load.
Hopefully this is useful for someone else as well.