October 2017
Intermediate to advanced
354 pages
9h 28m
English
Dynamic timers can be created and destroyed at any time, hence the name dynamic timers. Dynamic timers are represented by the struct timer_list object, defined in include/linux/timer.h:
struct timer_list { /* * Every field that changes during normal runtime grouped to the * same cacheline */ struct hlist_node entry; unsigned long expires; void (*function)(unsigned long); unsigned long data; u32 flags; #ifdef CONFIG_LOCKDEP struct lockdep_map lockdep_map; #endif };
All timers in a system are managed by a doubly linked list, and are sorted in order of their expiry time, represented by the expires field. The expires field specifies the time duration, after which the timer expires. As soon as the current jiffies value matches ...
Read now
Unlock full access