root/include/trace/events/alarmtimer.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0 */
   2 #undef TRACE_SYSTEM
   3 #define TRACE_SYSTEM alarmtimer
   4 
   5 #if !defined(_TRACE_ALARMTIMER_H) || defined(TRACE_HEADER_MULTI_READ)
   6 #define _TRACE_ALARMTIMER_H
   7 
   8 #include <linux/alarmtimer.h>
   9 #include <linux/rtc.h>
  10 #include <linux/tracepoint.h>
  11 
  12 TRACE_DEFINE_ENUM(ALARM_REALTIME);
  13 TRACE_DEFINE_ENUM(ALARM_BOOTTIME);
  14 TRACE_DEFINE_ENUM(ALARM_REALTIME_FREEZER);
  15 TRACE_DEFINE_ENUM(ALARM_BOOTTIME_FREEZER);
  16 
  17 #define show_alarm_type(type)   __print_flags(type, " | ",      \
  18         { 1 << ALARM_REALTIME, "REALTIME" },                    \
  19         { 1 << ALARM_BOOTTIME, "BOOTTIME" },                    \
  20         { 1 << ALARM_REALTIME_FREEZER, "REALTIME Freezer" },    \
  21         { 1 << ALARM_BOOTTIME_FREEZER, "BOOTTIME Freezer" })
  22 
  23 TRACE_EVENT(alarmtimer_suspend,
  24 
  25         TP_PROTO(ktime_t expires, int flag),
  26 
  27         TP_ARGS(expires, flag),
  28 
  29         TP_STRUCT__entry(
  30                 __field(s64, expires)
  31                 __field(unsigned char, alarm_type)
  32         ),
  33 
  34         TP_fast_assign(
  35                 __entry->expires = expires;
  36                 __entry->alarm_type = flag;
  37         ),
  38 
  39         TP_printk("alarmtimer type:%s expires:%llu",
  40                   show_alarm_type((1 << __entry->alarm_type)),
  41                   __entry->expires
  42         )
  43 );
  44 
  45 DECLARE_EVENT_CLASS(alarm_class,
  46 
  47         TP_PROTO(struct alarm *alarm, ktime_t now),
  48 
  49         TP_ARGS(alarm, now),
  50 
  51         TP_STRUCT__entry(
  52                 __field(void *, alarm)
  53                 __field(unsigned char, alarm_type)
  54                 __field(s64, expires)
  55                 __field(s64, now)
  56         ),
  57 
  58         TP_fast_assign(
  59                 __entry->alarm = alarm;
  60                 __entry->alarm_type = alarm->type;
  61                 __entry->expires = alarm->node.expires;
  62                 __entry->now = now;
  63         ),
  64 
  65         TP_printk("alarmtimer:%p type:%s expires:%llu now:%llu",
  66                   __entry->alarm,
  67                   show_alarm_type((1 << __entry->alarm_type)),
  68                   __entry->expires,
  69                   __entry->now
  70         )
  71 );
  72 
  73 DEFINE_EVENT(alarm_class, alarmtimer_fired,
  74 
  75         TP_PROTO(struct alarm *alarm, ktime_t now),
  76 
  77         TP_ARGS(alarm, now)
  78 );
  79 
  80 DEFINE_EVENT(alarm_class, alarmtimer_start,
  81 
  82         TP_PROTO(struct alarm *alarm, ktime_t now),
  83 
  84         TP_ARGS(alarm, now)
  85 );
  86 
  87 DEFINE_EVENT(alarm_class, alarmtimer_cancel,
  88 
  89         TP_PROTO(struct alarm *alarm, ktime_t now),
  90 
  91         TP_ARGS(alarm, now)
  92 );
  93 
  94 #endif /* _TRACE_ALARMTIMER_H */
  95 
  96 /* This part must be outside protection */
  97 #include <trace/define_trace.h>

/* [<][>][^][v][top][bottom][index][help] */