OpenVPN
|
Go to the source code of this file.
Data Structures | |
struct | schedule_entry |
struct | schedule |
Macros | |
#define | IN_TREE(e) ((e)->pri) |
Functions | |
struct schedule * | schedule_init (void) |
void | schedule_free (struct schedule *s) |
void | schedule_remove_entry (struct schedule *s, struct schedule_entry *e) |
struct schedule_entry * | schedule_find_least (struct schedule_entry *e) |
void | schedule_add_modify (struct schedule *s, struct schedule_entry *e) |
void | schedule_remove_node (struct schedule *s, struct schedule_entry *e) |
static void | schedule_add_entry (struct schedule *s, struct schedule_entry *e, const struct timeval *tv, unsigned int sigma) |
static struct schedule_entry * | schedule_get_earliest_wakeup (struct schedule *s, struct timeval *wakeup) |
#define IN_TREE | ( | e | ) | ((e)->pri) |
Definition at line 75 of file schedule.h.
|
inlinestatic |
Definition at line 98 of file schedule.h.
References schedule::earliest_wakeup, IN_TREE, schedule_add_modify(), schedule_entry::tv, and tv_within_sigma().
Referenced by multi_push_restart_schedule_exit(), and multi_schedule_context_wakeup().
void schedule_add_modify | ( | struct schedule * | s, |
struct schedule_entry * | e | ||
) |
Definition at line 344 of file schedule.c.
References check_debug_level(), D_SCHEDULER, IN_TREE, schedule_entry::parent, schedule_entry::pri, schedule::root, schedule_insert(), schedule_remove_node(), schedule_rotate_up(), and schedule_set_pri().
Referenced by schedule_add_entry().
struct schedule_entry* schedule_find_least | ( | struct schedule_entry * | e | ) |
Definition at line 384 of file schedule.c.
References check_debug_level(), D_SCHEDULER, and schedule_entry::lt.
Referenced by schedule_get_earliest_wakeup().
void schedule_free | ( | struct schedule * | s | ) |
Definition at line 421 of file schedule.c.
Referenced by multi_uninit().
|
inlinestatic |
Definition at line 118 of file schedule.h.
References schedule::earliest_wakeup, schedule::root, schedule_find_least(), and schedule_entry::tv.
Referenced by multi_get_timeout().
struct schedule* schedule_init | ( | void | ) |
void schedule_remove_entry | ( | struct schedule * | s, |
struct schedule_entry * | e | ||
) |
Definition at line 427 of file schedule.c.
References schedule::earliest_wakeup, and schedule_remove_node().
Referenced by multi_close_instance(), and multi_process_timeout().
void schedule_remove_node | ( | struct schedule * | s, |
struct schedule_entry * | e | ||
) |
Definition at line 248 of file schedule.c.
References schedule_entry::gt, schedule_entry::lt, schedule_entry::pri, schedule_detach_parent(), and schedule_rotate_up().
Referenced by schedule_add_modify(), and schedule_remove_entry().