Bug 70476

Summary: XSync idletime alarms may not trigger for low thresholds
Product: xorg Reporter: Peter Hutterer <peter.hutterer>
Component: Server/GeneralAssignee: Xorg Project Team <xorg-team>
Status: RESOLVED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium CC: bugzilla, peter.hutterer
Version: git   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Peter Hutterer 2013-10-15 06:31:20 UTC
Looks like Bug 59644 at first, but is different. A client requesting a positive transition alarm on IDLETIME for a low threshold may miss out on those. The sampling of the server is not good enough.

e.g. a client may request a positive transition on a 1ms threshold from idletime. The IdleTimeBlockHandler may recognise this and schedule for a wakeup, but the IdleTimeWakeupHandler re-queries the idletime and uses that value for triggering the alarms. If one ms or more have passed between Block and WakeupHandler, the alarm isn't triggered.

Since the delay between block and wakeup handler time is random and depends on system load, this makes clients miss random events.
Comment 1 Peter Hutterer 2013-10-17 04:18:21 UTC
Patch series starting here: http://lists.freedesktop.org/archives/xorg-devel/2013-October/038198.html
Comment 2 Peter Hutterer 2014-08-05 22:52:53 UTC
Patches leading up to and including:

commit 06b87aa528d7a739ba20101a1f83b1a428691a01
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Wed Oct 16 10:08:46 2013 +1000

    sync: if the idle time was reset, force alarms to trigger (#70476)

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.