AMD+Wayland+dual monitor = Screen flickering [Radeon 7800 XT]
Brief summary of the problem:
I have an…interesting behavior I’ve never had before with an Nvidia or integrated intel chipsets… I have now my AMD card plugged both to a normal HDMI monitor, and then to another HDMI TV. Both work well. However, when I turn the TV off… The monitor will start flickering. About three flickers every minute or so. It’s not a signal loss also, I can see it’s moving to the active monitor for a brief split second the windows that were drawing on the (now turned offf) TV area, so it’s kinda rearranging the whole desktop area…then it resets. It does this 3 times, the whole ordeal last a couple seconds, in which everything is unusable because of the flicker, and focus going to all sorts of places. Then the windows go back to the original arrangement, for a bit longer, until it will flicker again. If I turn the TV back on, the behavior stops immediately. I have been hinted this might be due to too aggressive hot-plug detection?
Hardware description:
- CPU: AMD Ryzen 7 7700 8-Core Processor
- GPU: [AMD/ATI] Navi 32 [Radeon RX 7700 XT / 7800 XT] [1002:747e] (rev c8) || [AMD/ATI] Raphael [1002:164e] (rev c5)
- System Memory: 32GB RAM
- Display(s): 2x Displays: Asus HDMI 1080p Monitor VS229 || Sony 4K HDMI TV, Model KD-55X900F
- Type of Display Connection: HDMI on both.
System information:
- Distro name and Version: Nobara Linux 38
- Kernel version: Linux Nobara-Desktop 6.6.8-200.fsync.fc38.x86_64 #1 (closed) SMP PREEMPT_DYNAMIC TKG
- Custom kernel: <TODO: e.g., N/A or Kernel from amd-staging-drm-next >
- AMD official driver version: Mesa 23.3.0
How to reproduce the issue:
Using Wayland and Mesa AMD driver, arrange for a Multi-monitor setup. In my case, both monitors on HDMI. Then, turn off one monitor, without unplugging it (TV off). After a while, the remaining monitor that is still on might try to re-arrange the windows and re-detect the monitor that is offline.
I can provide video file of the flickering if necessary.