Red Hat Bugzilla – Bug 22005
xscreensaver runs when monitor is powered down by DPMS
Last modified: 2014-03-16 22:17:35 EDT
The xscreensaver man page says:
Modern X servers contain support to power down the monitor
after an idle period. If the monitor has powered down,
then xscreensaver will notice this, and will not waste CPU
by drawing graphics demos on a black screen. An attempt
will also be made to explicitly power the monitor back up
as soon as user activity is detected.
It lies. It still runs while X has put the monitor into standby. Taking an
xwd confirms that the module really is displaying - it's not just that the
check for DPMS is done in the submodules rather than the xscreensaver
passion /home/dwmw2 $ ps axf | (sleep 1 ; grep --after-context=1
1311 ? S 0:01 xscreensaver -no-splash -timeout 10 -nice 10
3404 ? SN 0:02 \_ penetrate -root
passion /home/dwmw2 $ xset q | grep --after-context=1 DPMS
DPMS (Energy Star):
Standby: 0 Suspend: 0 Off: 1200
DPMS is Enabled
Monitor is Off
passion /home/dwmw2 $
On a desktop machine, this is harmless enough - aside from making me think
X had crashed because it was taking 99% CPU. On a laptop where we actually
want to conserve power, it's more important.
It shouldn't matter, but the X server is somewhere between 4.0.1e and
4.0.1f on SMP x86.
This shouldn't happen anymore witn 3.29-1 or later, as xscreensaver
took over doing DPMS stuff...