aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGlenn Elliott <gelliott@cs.unc.edu>2012-09-07 19:52:01 -0400
committerGlenn Elliott <gelliott@cs.unc.edu>2012-09-07 19:52:01 -0400
commit12587122ff78adffa2e8bcb571962d8f19365fb9 (patch)
treeb3f115c35e1b4dead71c1fac5fac0619a8d10b22 /src
parent0d7304546493b31f1e454191c33a5f95e92b4b57 (diff)
Updated sporadic_task() to take sig policy.
Also changed the LITMUS_TRY/LITMUS_CATCH/END_LITMUS_TRY macros to use if/else-if chains instead of switch statements. This is because SIGRTMAX is a variable in libc and not a compile-time constant (switches cant be used).
Diffstat (limited to 'src')
-rw-r--r--src/litmus.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/litmus.c b/src/litmus.c
index d3cc6bb..aaaeee3 100644
--- a/src/litmus.c
+++ b/src/litmus.c
@@ -43,15 +43,19 @@ int be_migrate_to(int target_cpu)
43 43
44int sporadic_task(lt_t e, lt_t p, lt_t phase, 44int sporadic_task(lt_t e, lt_t p, lt_t phase,
45 int cpu, task_class_t cls, 45 int cpu, task_class_t cls,
46 budget_policy_t budget_policy, int set_cpu_set) 46 budget_policy_t budget_policy,
47 budget_signal_policy_t budget_signal_policy,
48 int set_cpu_set)
47{ 49{
48 return sporadic_task_ns(e * NS_PER_MS, p * NS_PER_MS, phase * NS_PER_MS, 50 return sporadic_task_ns(e * NS_PER_MS, p * NS_PER_MS, phase * NS_PER_MS,
49 cpu, cls, budget_policy, set_cpu_set); 51 cpu, cls, budget_policy, budget_signal_policy, set_cpu_set);
50} 52}
51 53
52int sporadic_task_ns(lt_t e, lt_t p, lt_t phase, 54int sporadic_task_ns(lt_t e, lt_t p, lt_t phase,
53 int cpu, task_class_t cls, 55 int cpu, task_class_t cls,
54 budget_policy_t budget_policy, int set_cpu_set) 56 budget_policy_t budget_policy,
57 budget_signal_policy_t budget_signal_policy,
58 int set_cpu_set)
55{ 59{
56 struct rt_task param; 60 struct rt_task param;
57 int ret; 61 int ret;
@@ -67,6 +71,7 @@ int sporadic_task_ns(lt_t e, lt_t p, lt_t phase,
67 param.cls = cls; 71 param.cls = cls;
68 param.phase = phase; 72 param.phase = phase;
69 param.budget_policy = budget_policy; 73 param.budget_policy = budget_policy;
74 param.budget_signal_policy = budget_signal_policy;
70 75
71 if (set_cpu_set) { 76 if (set_cpu_set) {
72 ret = be_migrate_to(cpu); 77 ret = be_migrate_to(cpu);