circq
timeout_from_circq(struct circq *p)
struct circq *tctx_todo;
struct circq timeout_wheel[BUCKETS]; /* [T] Tick-based timeouts */
struct circq timeout_wheel_kc[BUCKETS]; /* [T] Clock-based timeouts */
struct circq timeout_new; /* [T] New, unscheduled timeouts */
struct circq timeout_todo; /* [T] Due or needs rescheduling */
struct circq *todo = tctx->tctx_todo;
struct circq timeout_proc; /* [T] Due + needs process context */
struct circq *p;
struct circq timeout_proc_mp; /* [T] Process ctx + no kernel lock */
void db_show_callout_bucket(struct circq *);
void db_show_timeout(struct timeout *, struct circq *);
db_show_callout_bucket(struct circq *bucket)
struct circq *p;
db_show_timeout(struct timeout *to, struct circq *bucket)
struct circq *wheel;
struct circq *next; /* next element */
struct circq *prev; /* previous element */
struct circq to_list; /* timeout queue, don't move */