Comment 33 for bug 1573345

Revision history for this message
In , Jacek Wieczorek (mrjjot) wrote :

I think I'm experiencing this bug too. In my case, each broken screen sleep leads to wallpaper change on my secondary monitor, disabling the compositor and sometimes moving certain windows around (usually code-oss).

In my /var/log/Xorg.0.log I can see the the screens disconnecting, exactly as Matthew Barnes said.

My testing consisted of logging output of `xrandr` in 0.1s intervals throughout different sleep cycles. I set "Switch off screens after" to 1 minute in system settings and then woke up the screens after different periods of time. I found out that if I wake up my computer after 3 or less minutes (including 1 min of waiting for the screens to switch off), it always wakes up correctly.

Correct screen wake up after 3 min - everything is fine:
   1562 DP-2 connected 2560x1440+0+0 (normal left inverted right x axis y axis) 597mm x 336mm
   1562 DP-4 connected primary 2560x1440+2560+0 (normal left inverted right x axis y axis) 597mm x 336mm

Broken wake up after 4 min - monitors temporarily disconnect, compositor is disabled, wallpapers change, windows are moved around (for DP-4):
   2027 DP-4 connected primary 2560x1440+2560+0 (normal left inverted right x axis y axis) 597mm x 336mm
      7 DP-4 disconnected primary 2560x1440+2560+0 (normal left inverted right x axis y axis) 0mm x 0mm
      8 DP-4 disconnected (normal left inverted right x axis y axis)
      7 DP-4 connected (normal left inverted right x axis y axis)
     54 DP-4 connected primary 2560x1440+2560+0 (normal left inverted right x axis y axis) 597mm x 336mm

Interestingly, when kscreen is not running, the behavior doesn't change but the logs look a bit differently.
Broken wake up after 4 min, kscreen not running (for DP-4):
   1982 DP-4 connected primary 2560x1440+2560+0 (normal left inverted right x axis y axis) 597mm x 336mm
     15 DP-4 disconnected primary 2560x1440+2560+0 (normal left inverted right x axis y axis) 0mm x 0mm
     76 DP-4 connected primary 2560x1440+2560+0 (normal left inverted right x axis y axis) 600mm x 340mm

I uploaded the compressed logs to this Github repo: https://github.com/Jacajack/logs/tree/master/dual-monitor. I use `xzcat log.txt.xz | grep 'DP-2' | uniq -c` to read them.

Some other observations:
 - "Broken" wake up always takes visibly more time than a normal one
 - I can reproduce this behavior on fresh Manjaro Live with or without Nvidia driver
 - Enabling/disabling DPMS doesn't change anything
 - It doesn't matter whether the lockscreen appears
 - "Auto input switch", "Automatic Standby" and "Smart Energy Saving" in screens' OSD menus don't affect this behavior

Given that XFCE users report similar behavior and that kscreen is not necessary for this bug to happen, maybe X.Org is in fact the problem? Maybe we should think of filing a bug report there?

System info:
  Manjaro Linux, kernel 5.10.49
  plasmashell version: 5.22.3
  xorg version: 1.20.11
  GPU: Nvidia RTX 2070 SUPER
  Nvidia driver version: 470.42.01
  Monitors: 2 x LG Ultragear 27GL850 connected via Display Port