diff options
author | Glenn Elliott <gelliott@cs.unc.edu> | 2012-12-06 20:37:20 -0500 |
---|---|---|
committer | Glenn Elliott <gelliott@cs.unc.edu> | 2012-12-06 20:37:20 -0500 |
commit | 983773f990053cb0ced72afb4b69594e5d32c779 (patch) | |
tree | 27767f1719926a3973a2d9effa943ea1437f9a1c /include | |
parent | 964297dd588ee6feab1aedecb2611bece2681973 (diff) |
AUX_FUTURE and revised inh-based aux tie break
Diffstat (limited to 'include')
-rwxr-xr-x[-rw-r--r--] | include/litmus/aux_tasks.h | 2 | ||||
-rwxr-xr-x[-rw-r--r--] | include/litmus/litmus.h | 1 | ||||
-rwxr-xr-x[-rw-r--r--] | include/litmus/rt_param.h | 7 |
3 files changed, 10 insertions, 0 deletions
diff --git a/include/litmus/aux_tasks.h b/include/litmus/aux_tasks.h index 3bb6b26fef09..87745c1c0df0 100644..100755 --- a/include/litmus/aux_tasks.h +++ b/include/litmus/aux_tasks.h | |||
@@ -6,6 +6,8 @@ struct task_struct; | |||
6 | /* admit an aux task with default parameters */ | 6 | /* admit an aux task with default parameters */ |
7 | //int admit_aux_task(struct task_struct *t); | 7 | //int admit_aux_task(struct task_struct *t); |
8 | 8 | ||
9 | int make_aux_task_if_required(struct task_struct *t); | ||
10 | |||
9 | /* call on an aux task when it exits real-time */ | 11 | /* call on an aux task when it exits real-time */ |
10 | int exit_aux_task(struct task_struct *t); | 12 | int exit_aux_task(struct task_struct *t); |
11 | 13 | ||
diff --git a/include/litmus/litmus.h b/include/litmus/litmus.h index db2987a24686..711b88e2b3d1 100644..100755 --- a/include/litmus/litmus.h +++ b/include/litmus/litmus.h | |||
@@ -32,6 +32,7 @@ struct task_struct* __waitqueue_remove_first(wait_queue_head_t *wq); | |||
32 | #define NO_CPU 0xffffffff | 32 | #define NO_CPU 0xffffffff |
33 | 33 | ||
34 | void litmus_fork(struct task_struct *tsk); | 34 | void litmus_fork(struct task_struct *tsk); |
35 | void litmus_post_fork_thread(struct task_struct *tsk); | ||
35 | void litmus_exec(void); | 36 | void litmus_exec(void); |
36 | /* clean up real-time state of a task */ | 37 | /* clean up real-time state of a task */ |
37 | void exit_litmus(struct task_struct *dead_tsk); | 38 | void exit_litmus(struct task_struct *dead_tsk); |
diff --git a/include/litmus/rt_param.h b/include/litmus/rt_param.h index cb7c3ac64339..aca78a835529 100644..100755 --- a/include/litmus/rt_param.h +++ b/include/litmus/rt_param.h | |||
@@ -41,6 +41,12 @@ typedef enum { | |||
41 | PRECISE_SIGNALS, /* budget signals are triggered with hrtimers */ | 41 | PRECISE_SIGNALS, /* budget signals are triggered with hrtimers */ |
42 | } budget_signal_policy_t; | 42 | } budget_signal_policy_t; |
43 | 43 | ||
44 | typedef enum { | ||
45 | AUX_ENABLE = 0x1, | ||
46 | AUX_CURRENT = (AUX_ENABLE<<1), | ||
47 | AUX_FUTURE = (AUX_CURRENT<<2) | ||
48 | } aux_flags_t; | ||
49 | |||
44 | /* We use the common priority interpretation "lower index == higher priority", | 50 | /* We use the common priority interpretation "lower index == higher priority", |
45 | * which is commonly used in fixed-priority schedulability analysis papers. | 51 | * which is commonly used in fixed-priority schedulability analysis papers. |
46 | * So, a numerically lower priority value implies higher scheduling priority, | 52 | * So, a numerically lower priority value implies higher scheduling priority, |
@@ -370,6 +376,7 @@ struct aux_data | |||
370 | struct list_head aux_tasks; | 376 | struct list_head aux_tasks; |
371 | struct binheap aux_task_owners; | 377 | struct binheap aux_task_owners; |
372 | unsigned int initialized:1; | 378 | unsigned int initialized:1; |
379 | unsigned int aux_future:1; | ||
373 | }; | 380 | }; |
374 | #endif | 381 | #endif |
375 | 382 | ||