aboutsummaryrefslogtreecommitdiffstats
path: root/include/litmus/budget.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/litmus/budget.h')
-rw-r--r--include/litmus/budget.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/include/litmus/budget.h b/include/litmus/budget.h
index ff18d89e8630..265f2b1e62b8 100644
--- a/include/litmus/budget.h
+++ b/include/litmus/budget.h
@@ -1,6 +1,11 @@
1#ifndef _LITMUS_BUDGET_H_ 1#ifndef _LITMUS_BUDGET_H_
2#define _LITMUS_BUDGET_H_ 2#define _LITMUS_BUDGET_H_
3 3
4struct enforcement_timer {
5 struct hrtimer timer;
6 int armed;
7};
8
4/** 9/**
5 * update_enforcement_timer() - Update per-processor enforcement timer for 10 * update_enforcement_timer() - Update per-processor enforcement timer for
6 * the next scheduled task. 11 * the next scheduled task.
@@ -11,6 +16,12 @@
11*/ 16*/
12void update_enforcement_timer(struct task_struct* t); 17void update_enforcement_timer(struct task_struct* t);
13 18
19void init_enforcement_timer(struct enforcement_timer *et);
20
21void arm_enforcement_timer(struct enforcement_timer* et, struct task_struct* t);
22
23void cancel_enforcement_timer(struct enforcement_timer* et);
24
14/* True if a task's server has progressed farther than the task 25/* True if a task's server has progressed farther than the task
15 * itself. This happens when budget enforcement has caused a task to be 26 * itself. This happens when budget enforcement has caused a task to be
16 * booted off until the next period. 27 * booted off until the next period.
@@ -32,4 +43,5 @@ void server_release(struct task_struct *t);
32 * so that we can write them to feather trace. 43 * so that we can write them to feather trace.
33 */ 44 */
34void task_release(struct task_struct *t); 45void task_release(struct task_struct *t);
46
35#endif 47#endif