Bug 60084 - [bug] Monitor will not go into standby on Weston idle
Summary: [bug] Monitor will not go into standby on Weston idle
Status: VERIFIED FIXED
Alias: None
Product: Wayland
Classification: Unclassified
Component: weston (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: Wayland bug list
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-01-30 18:47 UTC by Brian Lovin
Modified: 2013-03-21 19:37 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Brian Lovin 2013-01-30 18:47:04 UTC
System Environment:
--------------------------
Distro: Ubuntu 12.04
Arch: x86_64
wayland (master) dd7ef2e17d1ea24c9c59a6e4f4fd523cce41d75b
pixman (master) 65fc1adb6545737058e938105ae948a3607c277c
glproto (master) 8e3407e02980d088e20041e79bdcdd3737e7827e
cairo (master) 74a19c527c1fa07ade2042a8d2acecbb5f6ccab1
drm (master) 9dc0072e8d5a47fb0b2ada50fb897cb2c740bb40
macros (master) c98b41de5596c675c603ef43ae9570133f1a9921
dri2proto (master) ead89ad84877551cc15d26b95cb19a3e205df71f
mesa (master) 42f762dcf682957a8a5c85ca1d30b28f41ea4bd0
kbproto (master) f7022f5775350dce3348b7151845a32390e98791
libX11 (master) f57fd760cba92ad846917f21e94e73e9c846185f
libxkbcommon (master) bb620df7aa98c129687382e4866e643b8482fc59
weston (master) c0d79ce2ba2b4be973ac190a130cc521c48900d1

Detailed Description:
-----------------------------
Launch weston in DRM mode, then let weston go idle. The monitor does not enter standby mode (backlight is still on). If you wiggle the mouse but don't click the green dot to resume weston, and let weston idle again then the monitor will go into standby mode.

Steps to Reproduce:
----------------------------
1. start weston under DRM mode (with -i 3 or something to reduce wait times)
2. Let weston go idle
3. Observe the monitor is NOT in standby and the backlight is still on - the monitor won't go into standby no matter how long the wait time.
4. Wiggle the mouse, but do not click the green dot
5. Allow weston to go idle again and observe that now the monitor is in standby with the backlight off.

I verified this on two machines (a laptop and a desktop) - and this causes quite a bit of extra battery drain on the laptop if left to go idle.
Comment 1 Pekka Paalanen 2013-01-31 07:31:58 UTC
How long did you actually wait for monitor to go into standby after going black?

Weston has two timeouts, and the idle cycle works like this (or at least should work):
1. wait for the idle timeout to pass (the one set with weston -i option)
2. screen fades to black
3. if screensaver is configured:
3.1. execute weston-screensaver and fade in
3.2. screensaver is displayed until its timeout (weston.ini option screensaver:duration)
3.3. screen fades to black
4. monitor goes off or standby

So maybe there is a bug in the logic for the case without a screensaver.

I'm not sure if the duration is still required to pass until monitor goes off in the case of no screensaver.

Looks like the default duration is 1 min, and the weston.ini example has 10 mins.
Comment 2 Brian Lovin 2013-02-05 18:38:13 UTC
I have let the application sit over night before, and just did a test where I let it sit for 15 minutes after weston idled out.

I do not have a screensaver installed, but the configuration file does have this line:
path=/usr/libexec/weston-screensaver

Weston prints out that there is no such file.
Comment 3 Kristian Høgsberg 2013-02-15 21:14:17 UTC
commit 18639f8d4a28b4471516080c7af68926eaeb62e2
Author: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
Date:   Fri Feb 15 18:44:19 2013 +0200

    shell: Set the DPMS state if the screensaver fails to launch or dies
    
    The lock hook in desktop-shell only changes the DPMS state the second
    time it is called, because during the first time it launches the
    screensaver and wakes the compositor again when the screensaver surface
    is configured. However, if the screensaver fails to launch, the output
    is left in an enabled state, even thought there's no content being
    displayed on the screen.
    
    Fix this by disabling the outputs when the screensaver dies if the
    shell is still locked.
    
    https://bugs.freedesktop.org/show_bug.cgi?id=60084
Comment 4 Brian Lovin 2013-03-21 19:37:25 UTC
Verified fix resolves issue, and closing as verified.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.