Lines Matching full:timer
26 * @TIMER_DEFERRABLE: A deferrable timer will work normally when the
28 * to service it; instead, the timer will be serviced when the CPU
29 * eventually wakes up with a subsequent non-deferrable timer.
31 * @TIMER_IRQSAFE: An irqsafe timer is executed with IRQ disabled and
39 * @TIMER_PINNED: A pinned timer will not be affected by any timer
41 * on which the timer was enqueued.
43 * Note: Because enqueuing of timers can migrate the timer from one
46 * function is invoked via mod_timer() or add_timer(). If the timer
74 * LOCKDEP and DEBUG timer interfaces.
76 void init_timer_key(struct timer_list *timer,
81 extern void init_timer_on_stack_key(struct timer_list *timer,
86 static inline void init_timer_on_stack_key(struct timer_list *timer, in init_timer_on_stack_key() argument
92 init_timer_key(timer, func, flags, name, key); in init_timer_on_stack_key()
117 * timer_setup - prepare a timer for first use
118 * @timer: the timer in question
119 * @callback: the function to call when timer expires
122 * Regular timer initialization should use either DEFINE_TIMER() above,
126 #define timer_setup(timer, callback, flags) \ argument
127 __init_timer((timer), (callback), (flags))
129 #define timer_setup_on_stack(timer, callback, flags) \ argument
130 __init_timer_on_stack((timer), (callback), (flags))
133 extern void destroy_timer_on_stack(struct timer_list *timer);
135 static inline void destroy_timer_on_stack(struct timer_list *timer) { } in destroy_timer_on_stack() argument
142 * timer_pending - is a timer pending?
143 * @timer: the timer in question
145 * timer_pending will tell whether a given timer is currently pending,
147 * to this timer, eg. interrupt contexts, or other CPUs on SMP.
149 * return value: 1 if the timer is pending, 0 if not.
151 static inline int timer_pending(const struct timer_list * timer) in timer_pending() argument
153 return !hlist_unhashed_lockless(&timer->entry); in timer_pending()
156 extern void add_timer_on(struct timer_list *timer, int cpu);
157 extern int mod_timer(struct timer_list *timer, unsigned long expires);
158 extern int mod_timer_pending(struct timer_list *timer, unsigned long expires);
159 extern int timer_reduce(struct timer_list *timer, unsigned long expires);
162 * The jiffies value which is added to now, when there is no timer
163 * in the timer wheel:
167 extern void add_timer(struct timer_list *timer);
169 extern int try_to_del_timer_sync(struct timer_list *timer);
170 extern int timer_delete_sync(struct timer_list *timer);
171 extern int timer_delete(struct timer_list *timer);
172 extern int timer_shutdown_sync(struct timer_list *timer);
173 extern int timer_shutdown(struct timer_list *timer);
176 * del_timer_sync - Delete a pending timer and wait for a running callback
177 * @timer: The timer to be deleted
183 static inline int del_timer_sync(struct timer_list *timer) in del_timer_sync() argument
185 return timer_delete_sync(timer); in del_timer_sync()
189 * del_timer - Delete a pending timer
190 * @timer: The timer to be deleted
196 static inline int del_timer(struct timer_list *timer) in del_timer() argument
198 return timer_delete(timer); in del_timer()