lkml.org 
[lkml]   [2015]   [Jun]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH v2] PM / Domains: Skip timings during syscore suspend/resume
Date
On Friday, May 29, 2015 05:24:23 PM Geert Uytterhoeven wrote:
> From: Geert Uytterhoeven <geert+renesas@glider.be>
>
> The PM Domain code uses ktime_get() to perform various latency
> measurements. However, if ktime_get() is called while timekeeping is
> suspended, the following warning is printed:
>
> WARNING: CPU: 0 PID: 1340 at kernel/time/timekeeping.c:576 ktime_get+0x3
>
> This happens when resuming the PM Domain that contains the clock events
> source, which calls pm_genpd_syscore_poweron(). Chain of operations is:
>
> timekeeping_resume()
> {
> clockevents_resume()
> sh_cmt_clock_event_resume()
> pm_genpd_syscore_poweron()
> pm_genpd_sync_poweron()
> genpd_syscore_switch()
> genpd_power_on()
> ktime_get(), but timekeeping_suspended == 1
> ...
> timekeeping_suspended = 0;
> }
>
> Fix this by adding a "timed" parameter to genpd_power_{on,off}() and
> pm_genpd_sync_power{off,on}(), to indicate whether latency measurements
> are allowed. This parameter is passed as false in
> genpd_syscore_switch() (i.e. during syscore suspend/resume), and true in
> all other cases.
>
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>

Queued up for 4.2, thanks!


--
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.


\
 
 \ /
  Last update: 2015-06-16 01:21    [W:0.055 / U:0.720 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site