1#ifndef __LINUX_TIMER_H__
2#define __LINUX_TIMER_H__
35#define timer_container_of(ptr, timer_member, field) \
36 container_of(timer_member, __typeof__(*(ptr)), field)
55#define jiffies (dcl_jiffies_now())
58#define msecs_to_jiffies(ms) ((ms) * HZ / 1000)
59#define jiffies_to_msecs(j) ((j) * 1000 / HZ)
60#define time_after(a, b) ((long)((b) - (a)) < 0)
83#define nsecs_to_jiffies(n) ((unsigned long)((n) / (NSEC_PER_SEC / HZ)))
96#define nsecs_to_jiffies64(n) ((u64)((n) / (NSEC_PER_SEC / HZ)))
98#define time_before(a, b) time_after(b, a)
99#define time_after_eq(a, b) ((long)((a) - (b)) >= 0)
101#define timer_setup(t, fn, flags) do { \
102 (t)->function = (fn); \
130static inline void add_timer(
struct timer_list*
t) {
143 int was_pending =
t->pending;
148static inline int del_timer_sync(
struct timer_list*
t) {
160static inline int timer_delete(
struct timer_list*
t) {
164static inline int timer_delete_sync(
struct timer_list*
t) {
165 return del_timer_sync(
t);
168static inline int timer_pending(
const struct timer_list*
t) {
173#define from_timer(var, callback_timer, timer_fieldname) \
174 container_of(callback_timer, typeof(*var), timer_fieldname)
XETime t
Definition main.cpp:53
unsigned long dcl_jiffies_now(void)
void * data
Definition timer.h:9
int pending
Definition timer.h:10
void(* function)(struct timer_list *t)
Definition timer.h:7
unsigned long expires
Definition timer.h:8