aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--litmus.c53
-rw-r--r--litmus.h3
2 files changed, 32 insertions, 24 deletions
diff --git a/litmus.c b/litmus.c
index 4490375..6e75999 100644
--- a/litmus.c
+++ b/litmus.c
@@ -171,30 +171,33 @@ task_class_t str2class(const char* str)
171 171
172 172
173/* Litmus syscalls definitions */ 173/* Litmus syscalls definitions */
174#define __NR_sched_setpolicy 320 174#define __NR_sched_setpolicy 320
175#define __NR_sched_getpolicy 321 175#define __NR_sched_getpolicy 321
176#define __NR_set_rt_mode 322 176#define __NR_set_rt_mode 322
177#define __NR_set_rt_task_param 323 177#define __NR_set_rt_task_param 323
178#define __NR_get_rt_task_param 324 178#define __NR_get_rt_task_param 324
179#define __NR_prepare_rt_task 325 179#define __NR_prepare_rt_task 325
180#define __NR_reset_stat 326 180#define __NR_reset_stat 326
181#define __NR_sleep_next_period 327 181#define __NR_sleep_next_period 327
182#define __NR_scheduler_setup 328 182#define __NR_scheduler_setup 328
183#define __NR_enter_np 329 183#define __NR_enter_np 329
184#define __NR_exit_np 330 184#define __NR_exit_np 330
185#define __NR_pi_sema_init 331 185#define __NR_pi_sema_init 331
186#define __NR_pi_down 332 186#define __NR_pi_down 332
187#define __NR_pi_up 333 187#define __NR_pi_up 333
188#define __NR_pi_sema_free 334 188#define __NR_pi_sema_free 334
189#define __NR_sema_init 335 189#define __NR_sema_init 335
190#define __NR_down 336 190#define __NR_down 336
191#define __NR_up 337 191#define __NR_up 337
192#define __NR_sema_free 338 192#define __NR_sema_free 338
193#define __NR_srp_sema_init 339 193#define __NR_srp_sema_init 339
194#define __NR_srp_down 340 194#define __NR_srp_down 340
195#define __NR_srp_up 341 195#define __NR_srp_up 341
196#define __NR_reg_task_srp_sem 342 196#define __NR_reg_task_srp_sem 342
197#define __NR_srp_sema_free 343 197#define __NR_srp_sema_free 343
198#define __NR_query_job_no 344
199#define __NR_wait_for_job_release 345
200
198 201
199/* Syscall stub for setting RT mode and scheduling options */ 202/* Syscall stub for setting RT mode and scheduling options */
200_syscall1(spolicy, sched_setpolicy, spolicy, arg1); 203_syscall1(spolicy, sched_setpolicy, spolicy, arg1);
@@ -221,4 +224,6 @@ _syscall1(int, srp_down, srp_sema_id, sem_id);
221_syscall1(int, srp_up, srp_sema_id, sem_id); 224_syscall1(int, srp_up, srp_sema_id, sem_id);
222_syscall2(int, reg_task_srp_sem, srp_sema_id, sem_id, pid_t, t_pid); 225_syscall2(int, reg_task_srp_sem, srp_sema_id, sem_id, pid_t, t_pid);
223_syscall1(int, srp_sema_free, srp_sema_id, sem_id); 226_syscall1(int, srp_sema_free, srp_sema_id, sem_id);
227_syscall1(int, query_job_no, unsigned int*, job_no);
228_syscall1(int, wait_for_job_release, unsigned int, job_no);
224 229
diff --git a/litmus.h b/litmus.h
index 9155d46..4df572f 100644
--- a/litmus.h
+++ b/litmus.h
@@ -89,6 +89,9 @@ int srp_down(srp_sema_id sem_id);
89int srp_up(srp_sema_id sem_id); 89int srp_up(srp_sema_id sem_id);
90int reg_task_srp_sem(srp_sema_id sem_id, pid_t t_pid); 90int reg_task_srp_sem(srp_sema_id sem_id, pid_t t_pid);
91int srp_sema_free(srp_sema_id sem_id); 91int srp_sema_free(srp_sema_id sem_id);
92int get_job_no(unsigned int* job_no);
93int wait_for_job_release(unsigned int job_no);
94
92 95
93/* library functions */ 96/* library functions */
94int create_rt_task(rt_fn_t rt_prog, void *arg, int cpu, int wcet, int period); 97int create_rt_task(rt_fn_t rt_prog, void *arg, int cpu, int wcet, int period);