lkml.org 
[lkml]   [2016]   [Sep]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH v4] time: alarmtimer: Add the trcepoints for alarmtimer
On Tue, Sep 6, 2016 at 11:06 PM, Baolin Wang <baolin.wang@linaro.org> wrote:
> For system debugging, we sometimes want to know who sets one
> alarm timer, the time of the timer, when the timer started and
> fired and so on. Thus adding tracepoints can help us trace the
> alarmtimer information.
>
> For example, when we debug the system supend/resume, if the
> system is always resumed by RTC alarm, we can find out which
> process set the alarm timer to resume system by below trace log:
>
> ......
> Binder:2976_6-3473 [005] d..2 1076.587732: alarmtimer_start:
> process:Binder:2976_6
> alarmtimer type:ALARM_BOOTTIME expires:1234154000000 time: 1970-1-1
> 0:20:35
>
> Binder:2976_7-3480 [002] d..2 1076.592707: alarmtimer_cancel:
> process:Binder:2976_7
> alarmtimer type:ALARM_BOOTTIME expires:1325463060000000000 time:
> 2012-1-2 0:11:0
>
> Binder:2976_7-3480 [002] d..2 1076.592731: alarmtimer_start:
> process:Binder:2976_7
> alarmtimer type:ALARM_BOOTTIME expires:1325378040000000000 time:
> 2012-1-1 0:34:0
>
> system_server-2976 [003] d..2 1076.605587: alarmtimer_cancel:
> process:system_server
> alarmtimer type:ALARM_BOOTTIME expires:1234154000000 time: 1970-1-1
> 0:20:35
>
> system_server-2976 [003] d..2 1076.605608: alarmtimer_start:
> process:system_server
> alarmtimer type:ALARM_BOOTTIME expires:1234155000000 time: 1970-1-1
> 0:20:35
>
> system_server-3000 [002] ...1 1087.737565: alarmtimer_suspend:
> alarmtimer type:ALARM_BOOTTIME
> expires time: 2012-1-1 0:34:0
> ......
>
> From the trace log, we can find out the 'Binder:2976_7' process
> set one alarm timer which resumes the system.
>
> Signed-off-by: Baolin Wang <baolin.wang@linaro.org>
> Acked-by: Steven Rostedt <rostedt@goodmis.org>
> ---
> Changes since v3:
> - Fix the build error on S390.

Since the original change is already applied to tip/timers/core, can
you provide an incremental patch (a patch against tip/timers/core)
that fixes the issue, rather then resending the entire patch?

Also, the "#ifdef CONFIG_RTC_LIB" solution I proposed was sort of a
hack, so I'd hope to see something better.

One better solution would be to add a dummy static inline
implementation of rtc_ktime_to_tm() in include/linux/rtc.h.

ie something like:
#ifdef CONFIG_RTC_LIB
struct rtc_time rtc_ktime_to_tm(ktime_t kt);
#else
static inline rtc_time rtc_ktime_to_tm(ktime_t kt)
{
struct rt_time ret;
memset(&ret, 0, sizeof(struct rt_time));
return ret;
}
#endif

thanks
-john

thanks
-john

\
 
 \ /
  Last update: 2016-09-17 09:58    [W:0.068 / U:0.060 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site