Lines Matching full:timer
40 * @TIMER_DEFERRABLE: A deferrable timer will work normally when the
42 * to service it; instead, the timer will be serviced when the CPU
43 * eventually wakes up with a subsequent non-deferrable timer.
45 * @TIMER_IRQSAFE: An irqsafe timer is executed with IRQ disabled and
53 * @TIMER_PINNED: A pinned timer will not be affected by any timer
55 * on which the timer was enqueued.
57 * Note: Because enqueuing of timers can migrate the timer from one
60 * function is invoked via mod_timer() or add_timer(). If the timer
89 * LOCKDEP and DEBUG timer interfaces.
91 void init_timer_key(struct timer_list *timer,
96 extern void init_timer_on_stack_key(struct timer_list *timer,
101 static inline void init_timer_on_stack_key(struct timer_list *timer, in init_timer_on_stack_key() argument
107 init_timer_key(timer, func, flags, name, key); in init_timer_on_stack_key()
132 * timer_setup - prepare a timer for first use
133 * @timer: the timer in question
134 * @callback: the function to call when timer expires
137 * Regular timer initialization should use either DEFINE_TIMER() above,
141 #define timer_setup(timer, callback, flags) \ argument
142 __init_timer((timer), (callback), (flags))
144 #define timer_setup_on_stack(timer, callback, flags) \ argument
145 __init_timer_on_stack((timer), (callback), (flags))
148 extern void destroy_timer_on_stack(struct timer_list *timer);
150 static inline void destroy_timer_on_stack(struct timer_list *timer) { } in destroy_timer_on_stack() argument
157 * timer_pending - is a timer pending?
158 * @timer: the timer in question
160 * timer_pending will tell whether a given timer is currently pending,
162 * to this timer, eg. interrupt contexts, or other CPUs on SMP.
164 * return value: 1 if the timer is pending, 0 if not.
166 static inline int timer_pending(const struct timer_list * timer) in timer_pending() argument
168 return !hlist_unhashed_lockless(&timer->entry); in timer_pending()
171 extern void add_timer_on(struct timer_list *timer, int cpu);
172 extern int mod_timer(struct timer_list *timer, unsigned long expires);
173 extern int mod_timer_pending(struct timer_list *timer, unsigned long expires);
174 extern int timer_reduce(struct timer_list *timer, unsigned long expires);
177 * The jiffies value which is added to now, when there is no timer
178 * in the timer wheel:
182 extern void add_timer(struct timer_list *timer);
184 extern int try_to_del_timer_sync(struct timer_list *timer);
185 extern int timer_delete_sync(struct timer_list *timer);
186 extern int timer_delete(struct timer_list *timer);
187 extern int timer_shutdown_sync(struct timer_list *timer);
188 extern int timer_shutdown(struct timer_list *timer);
191 * del_timer_sync - Delete a pending timer and wait for a running callback
192 * @timer: The timer to be deleted
198 static inline int del_timer_sync(struct timer_list *timer) in del_timer_sync() argument
200 return timer_delete_sync(timer); in del_timer_sync()
204 * del_timer - Delete a pending timer
205 * @timer: The timer to be deleted
211 static inline int del_timer(struct timer_list *timer) in del_timer() argument
213 return timer_delete(timer); in del_timer()