aboutsummaryrefslogtreecommitdiffstats
path: root/include/litmus/sched_plugin.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/litmus/sched_plugin.h')
-rw-r--r--include/litmus/sched_plugin.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/litmus/sched_plugin.h b/include/litmus/sched_plugin.h
index 6e7cabdddae8..b5d1ae7bc3b6 100644
--- a/include/litmus/sched_plugin.h
+++ b/include/litmus/sched_plugin.h
@@ -53,6 +53,10 @@ typedef void (*task_block_t) (struct task_struct *task);
53 */ 53 */
54typedef void (*task_exit_t) (struct task_struct *); 54typedef void (*task_exit_t) (struct task_struct *);
55 55
56/* called early before the caller holds the runqueue lock */
57typedef void (*pre_setsched_t) (struct task_struct *, int policy);
58
59
56/* Called when the current task attempts to create a new lock of a given 60/* Called when the current task attempts to create a new lock of a given
57 * protocol type. */ 61 * protocol type. */
58typedef long (*allocate_lock_t) (struct litmus_lock **lock, int type, 62typedef long (*allocate_lock_t) (struct litmus_lock **lock, int type,
@@ -93,6 +97,8 @@ struct sched_plugin {
93 task_block_t task_block; 97 task_block_t task_block;
94 task_exit_t task_exit; 98 task_exit_t task_exit;
95 99
100 pre_setsched_t pre_setsched;
101
96#ifdef CONFIG_LITMUS_LOCKING 102#ifdef CONFIG_LITMUS_LOCKING
97 /* locking protocols */ 103 /* locking protocols */
98 allocate_lock_t allocate_lock; 104 allocate_lock_t allocate_lock;