timer_chain points to the first (head) timer in a linked list of timers. The timers are arranged according to their expiration times, with the first timer scheduled to expire at the head of the linked list. timer_chain will be NULL if no timers are scheduled.
Each timer in the linked list is a struct timer:
typedef struct timer
tim_next: Points to next timer in linked list.
struct timer *tim_next; /* Points to next timer in linked list. */
timer_func_t tim_func; /* Function called when timer expires (
tim_func: Function that is called when timer expires (e.g., arp_timeout()).
tim_ref: Field used by clients (arp and tcp) to identify the connection associated with the timer. This field is an argument to tim_func (see tim_func above).
tim_time: Expiration time for timer (in clock ticks since boot).
tim_active: 1 if active, 0 if inactive.