Comment 55 for bug 1301125

Revision history for this message
K Marshall (kmar220) wrote :

I am experiencing the issue where my console becomes completely unresponsive when the unity screensaver is activated.

I have tested some potential work arounds for console lockup when the unity screensaver activates under 16.04 (choose one) :
     Upgrade to 16.10
     Upgrade to 16.04.2
     Install the 16.04 HWE kernel and X packages
     Set Radeon option "EnablePageFlip" to "false"
     Set Radeon option "Accel" to "false"

Ubuntu 16.04 (64 bit) ; Unity desktop environment ; "radeon" driver ; Radeon X600 video card ; Dell Optiplex 745
VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] RV370 [Radeon X600/X600 SE] ( 1002:5b62 Subsystem: 1002:0b02 )

When the Unity screensaver activates, the screen fades to black and the monitor powers off. After that, the keyboard is unresponsive (not even num lock or scroll lock trigger their keyboard lights) and will not wake the system. The mouse is unresponsive and will not wake the system. Moving the mouse or pressing a number of keys will trigger an "[mi] EQ overflowing" error message and backtrace in /var/log/Xorg.0.log :

...
[ 408.605] (II) RADEON(0): Modeline "1152x864"x0.0 108.00 1152 1216 1344 160
0 864 865 868 900 +hsync +vsync (67.5 kHz e)
(EE) [mi] EQ overflowing. Additional events will be discarded until existing events are processed.
(EE)
(EE) Backtrace:
(EE) 0: /usr/lib/xorg/Xorg (xorg_backtrace+0x4e) [0x55f7683dbade]
(EE) 1: /usr/lib/xorg/Xorg (mieqEnqueue+0x253) [0x55f7683bd583]
(EE) 2: /usr/lib/xorg/Xorg (QueuePointerEvents+0x52) [0x55f768295862]
(EE) 3: /usr/lib/xorg/modules/input/evdev_drv.so (0x7fbf704d9000+0x61f3) [0x7fbf704df1f3]
(EE) 4: /usr/lib/xorg/modules/input/evdev_drv.so (0x7fbf704d9000+0x6a5d) [0x7fbf704dfa5d]
(EE) 5: /usr/lib/xorg/Xorg (0x55f768229000+0x94538) [0x55f7682bd538]
(EE) 6: /usr/lib/xorg/Xorg (0x55f768229000+0xb9922) [0x55f7682e2922]
(EE) 7: /lib/x86_64-linux-gnu/libc.so.6 (0x7fbf7a1b1000+0x354b0) [0x7fbf7a1e64b0]
(EE) 8: /lib/x86_64-linux-gnu/libc.so.6 (__read+0x2b) [0x7fbf7a2a769b]
 (EE) 9: /usr/lib/x86_64-linux-gnu/libdrm.so.2 (drmHandleEvent+0x37) [0x7fbf7b598de7]
(EE) 10: /usr/lib/xorg/modules/drivers/radeon_drv.so (0x7fbf7629f000+0x4f9ec) [0x7fbf762ee9ec]
(EE) 11: /usr/lib/xorg/modules/drivers/radeon_drv.so (0x7fbf7629f000+0x498e6) [0x7fbf762e88e6]
(EE) 12: /usr/lib/xorg/modules/drivers/radeon_drv.so (0x7fbf7629f000+0x499af) [0x7fbf762e89af]
(EE) 13: /usr/lib/xorg/Xorg (dixSaveScreens+0x29e) [0x55f7682ae6ee]
(EE) 14: /usr/lib/xorg/Xorg (mieqProcessInputEvents+0x1e6) [0x55f7683bdc06]
(EE) 15: /usr/lib/xorg/Xorg (ProcessInputEvents+0x19) [0x55f7682bd789]
(EE) 16: /usr/lib/xorg/Xorg (0x55f768229000+0x53b7f) [0x55f76827cb7f]
(EE) 17: /usr/lib/xorg/Xorg (0x55f768229000+0x57dd3) [0x55f768280dd3]
(EE) 18: /lib/x86_64-linux-gnu/libc.so.6 (__libc_start_main+0xf0) [0x7fbf7a1d1830]
(EE) 19: /usr/lib/xorg/Xorg (_start+0x29) [0x55f76826b049]
(EE)
(EE) [mi] These backtraces from mieqEnqueue may point to a culprit higher up the stack.
(EE) [mi] mieq is *NOT* the cause. It is a victim.
(EE) [mi] EQ overflow continuing. 100 events have been dropped.

The only way to restore console operation was to completely kill the existing X11 session (and all running applications) and restart X11. This required logging in remotely and running :

        sudo service lightdm restart

This particular machine does not have any problem under XFCE and xscreensaver -- the screen locks and unlocks without issue. My experience is that it is only a problem with the Unity desktop environment screensaver / screen locker.

I found that if I disabled DPMS through the xorg.conf, that the console did not lockup or become unresponsive. However, the screen would not blank. When the screen lock activates, the unlock prompt screen appears and remains visible at all times.

After some further experimentation, I have found that if the "EnablePageFlip" option for the radeon driver is set to "false", then the console does not become unresponsive when the Unity screensaver / screen lock activated.

Alternately, I also found that setting the radeon driver option "Accel" to "false" also seemed to prevent the console from becoming unresponsive when the Unity screensaver / screen lock activated.

sudo mkdir /etc/X11/xorg.conf.d/

sudo echo '## xorg.conf fragment to set radeon option "EnablePageFlip" to "false"
Section "Device"
    Identifier "vdev0"
    Driver "radeon"
    Option "EnablePageFlip" "false"
EndSection
Section "Monitor"
    Identifier "vmon0"
EndSection
Section "Screen"
    Identifier "Default Screen"
    Monitor "vmon0"
    Device "vdev0"
EndSection
' >> /etc/X11/xorg.conf.d/video.conf