X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=instrumentation%2Fevents%2Flttng-module%2Ftimer.h;h=cee4148c313756454352fe9a528b73eab199deb3;hb=f059ce66b633d7943520900aecdbab9010ce4a2a;hp=8807ad514ed4c203129bf0a87583a5fa577babaf;hpb=4eaeb54a27fbf701c2a4908a6e90a978b93deb06;p=lttng-modules.git diff --git a/instrumentation/events/lttng-module/timer.h b/instrumentation/events/lttng-module/timer.h index 8807ad51..cee4148c 100644 --- a/instrumentation/events/lttng-module/timer.h +++ b/instrumentation/events/lttng-module/timer.h @@ -88,6 +88,27 @@ LTTNG_TRACEPOINT_EVENT(timer_start, ) #endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,2,0)) */ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,2,0)) +/** + * timer_expire_entry - called immediately before the timer callback + * @timer: pointer to struct timer_list + * + * Allows to determine the timer latency. + */ +LTTNG_TRACEPOINT_EVENT(timer_expire_entry, + + TP_PROTO(struct timer_list *timer, unsigned long baseclk), + + TP_ARGS(timer, baseclk), + + TP_FIELDS( + ctf_integer_hex(void *, timer, timer) + ctf_integer(unsigned long, now, jiffies) + ctf_integer_hex(void *, function, timer->function) + ctf_integer(unsigned long, baseclk, baseclk) + ) +) +#else /** * timer_expire_entry - called immediately before the timer callback * @timer: pointer to struct timer_list @@ -106,6 +127,7 @@ LTTNG_TRACEPOINT_EVENT(timer_expire_entry, ctf_integer_hex(void *, function, timer->function) ) ) +#endif /** * timer_expire_exit - called immediately after the timer callback returns @@ -271,7 +293,26 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(timer_hrtimer_class, hrtimer_cancel, * zero, otherwise it is started * @expires: the itimers expiry time */ -#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,11,0)) +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,5,0)) +LTTNG_TRACEPOINT_EVENT_MAP(itimer_state, + + timer_itimer_state, + + TP_PROTO(int which, const struct itimerspec64 *const value, + unsigned long long expires), + + TP_ARGS(which, value, expires), + + TP_FIELDS( + ctf_integer(int, which, which) + ctf_integer(unsigned long long, expires, expires) + ctf_integer(long, value_sec, value->it_value.tv_sec) + ctf_integer(long, value_nsec, value->it_value.tv_nsec) + ctf_integer(long, interval_sec, value->it_interval.tv_sec) + ctf_integer(long, interval_nsec, value->it_interval.tv_nsec) + ) +) +#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,11,0)) LTTNG_TRACEPOINT_EVENT_MAP(itimer_state, timer_itimer_state,