|
@@ -43,15 +43,18 @@ DEFINE_EVENT(timer_class, timer_init,
|
|
|
*/
|
|
|
TRACE_EVENT(timer_start,
|
|
|
|
|
|
- TP_PROTO(struct timer_list *timer, unsigned long expires),
|
|
|
+ TP_PROTO(struct timer_list *timer,
|
|
|
+ unsigned long expires,
|
|
|
+ unsigned int deferrable),
|
|
|
|
|
|
- TP_ARGS(timer, expires),
|
|
|
+ TP_ARGS(timer, expires, deferrable),
|
|
|
|
|
|
TP_STRUCT__entry(
|
|
|
__field( void *, timer )
|
|
|
__field( void *, function )
|
|
|
__field( unsigned long, expires )
|
|
|
__field( unsigned long, now )
|
|
|
+ __field( unsigned int, deferrable )
|
|
|
),
|
|
|
|
|
|
TP_fast_assign(
|
|
@@ -59,11 +62,13 @@ TRACE_EVENT(timer_start,
|
|
|
__entry->function = timer->function;
|
|
|
__entry->expires = expires;
|
|
|
__entry->now = jiffies;
|
|
|
+ __entry->deferrable = deferrable;
|
|
|
),
|
|
|
|
|
|
- TP_printk("timer=%p function=%pf expires=%lu [timeout=%ld]",
|
|
|
+ TP_printk("timer=%p function=%pf expires=%lu [timeout=%ld] defer=%c",
|
|
|
__entry->timer, __entry->function, __entry->expires,
|
|
|
- (long)__entry->expires - __entry->now)
|
|
|
+ (long)__entry->expires - __entry->now,
|
|
|
+ __entry->deferrable > 0 ? 'y':'n')
|
|
|
);
|
|
|
|
|
|
/**
|