diff options
author | Jonathan Herman <hermanjl@cs.unc.edu> | 2011-10-14 19:31:13 -0400 |
---|---|---|
committer | Jonathan Herman <hermanjl@cs.unc.edu> | 2011-10-14 19:31:13 -0400 |
commit | 8e236ee20fddac1f3728fccfb7b8c017506321ea (patch) | |
tree | 57e12b6c8b14619be814880fd6722154097c6cca | |
parent | 2cd5b8b9f496e92884b71eb58ea1ed40947cd2f3 (diff) |
Tasks are now scheduled using serversrtas12-mc-beta-exp
-rw-r--r-- | include/litmus/rt_param.h | 2 | ||||
-rw-r--r-- | litmus/budget.c | 2 | ||||
-rw-r--r-- | litmus/rt_domain.c | 15 | ||||
-rw-r--r-- | litmus/sched_mc.c | 1 |
4 files changed, 2 insertions, 18 deletions
diff --git a/include/litmus/rt_param.h b/include/litmus/rt_param.h index f15b1ad5fa3c..55419d411614 100644 --- a/include/litmus/rt_param.h +++ b/include/litmus/rt_param.h | |||
@@ -212,8 +212,6 @@ struct rt_param { | |||
212 | 212 | ||
213 | /* Pointer to the page shared between userspace and kernel. */ | 213 | /* Pointer to the page shared between userspace and kernel. */ |
214 | struct control_page * ctrl_page; | 214 | struct control_page * ctrl_page; |
215 | |||
216 | /* int go; */ | ||
217 | }; | 215 | }; |
218 | 216 | ||
219 | /* Possible RT flags */ | 217 | /* Possible RT flags */ |
diff --git a/litmus/budget.c b/litmus/budget.c index 7d94f7e61b27..b2239ff1c45c 100644 --- a/litmus/budget.c +++ b/litmus/budget.c | |||
@@ -112,7 +112,7 @@ static int __init init_budget_enforcement(void) | |||
112 | 112 | ||
113 | void task_release(struct task_struct *t) | 113 | void task_release(struct task_struct *t) |
114 | { | 114 | { |
115 | t->rt_param.job_params.real_release = t->rt_param.job_params.deadline; | 115 | t->rt_param.job_params.real_release = t->rt_param.job_params.real_deadline; |
116 | t->rt_param.job_params.real_deadline += get_rt_period(t); | 116 | t->rt_param.job_params.real_deadline += get_rt_period(t); |
117 | t->rt_param.job_params.job_no++; | 117 | t->rt_param.job_params.job_no++; |
118 | TRACE_TASK(t, "Releasing task, rr=%llu rd=%llu\n", | 118 | TRACE_TASK(t, "Releasing task, rr=%llu rd=%llu\n", |
diff --git a/litmus/rt_domain.c b/litmus/rt_domain.c index 5264d2546a7f..e6ccf04cecf0 100644 --- a/litmus/rt_domain.c +++ b/litmus/rt_domain.c | |||
@@ -417,14 +417,12 @@ static void pd_requeue(domain_t *dom, struct task_struct *task) | |||
417 | 417 | ||
418 | if (is_released(task, litmus_clock())) { | 418 | if (is_released(task, litmus_clock())) { |
419 | __add_ready(domain, task); | 419 | __add_ready(domain, task); |
420 | /* tsk_rt(task)->go = 1; */ | ||
421 | VTRACE("going, rt: adding %s/%d (%llu, %llu) rel=%llu to ready queue at %llu\n", | 420 | VTRACE("going, rt: adding %s/%d (%llu, %llu) rel=%llu to ready queue at %llu\n", |
422 | task->comm, task->pid, get_exec_cost(task), get_rt_period(task), | 421 | task->comm, task->pid, get_exec_cost(task), get_rt_period(task), |
423 | get_release(task), litmus_clock()); | 422 | get_release(task), litmus_clock()); |
424 | } else { | 423 | } else { |
425 | /* task has to wait for next release */ | 424 | /* task has to wait for next release */ |
426 | VTRACE_TASK(task, "not going, add release(), rel=%llu\n", get_release(task)); | 425 | VTRACE_TASK(task, "not going, add release(), rel=%llu\n", get_release(task)); |
427 | /* tsk_rt(task)->go = 0; */ | ||
428 | add_release(domain, task); | 426 | add_release(domain, task); |
429 | } | 427 | } |
430 | 428 | ||
@@ -437,10 +435,6 @@ static void pd_requeue(domain_t *dom, struct task_struct *task) | |||
437 | static struct task_struct* pd_take_ready(domain_t *dom) | 435 | static struct task_struct* pd_take_ready(domain_t *dom) |
438 | { | 436 | { |
439 | struct task_struct *t = __take_ready((rt_domain_t*)dom->data); | 437 | struct task_struct *t = __take_ready((rt_domain_t*)dom->data); |
440 | if (t) { | ||
441 | /* TRACE_TASK(t, "going\n"); */ | ||
442 | /* tsk_rt(t)->go = 1; */ | ||
443 | } | ||
444 | return t; | 438 | return t; |
445 | } | 439 | } |
446 | 440 | ||
@@ -451,10 +445,6 @@ static struct task_struct* pd_take_ready(domain_t *dom) | |||
451 | static struct task_struct* pd_peek_ready(domain_t *dom) | 445 | static struct task_struct* pd_peek_ready(domain_t *dom) |
452 | { | 446 | { |
453 | struct task_struct *t = __peek_ready((rt_domain_t*)dom->data); | 447 | struct task_struct *t = __peek_ready((rt_domain_t*)dom->data); |
454 | /* if (t) { */ | ||
455 | /* TRACE_TASK(t, "going\n"); */ | ||
456 | /* tsk_rt(t)->go = 1; */ | ||
457 | /* } */ | ||
458 | return t; | 448 | return t; |
459 | } | 449 | } |
460 | 450 | ||
@@ -462,11 +452,6 @@ static void pd_remove(domain_t *dom, struct task_struct *task) | |||
462 | { | 452 | { |
463 | if (is_queued(task)) | 453 | if (is_queued(task)) |
464 | remove((rt_domain_t*)dom->data, task); | 454 | remove((rt_domain_t*)dom->data, task); |
465 | /* if (is_queued(task) && tsk_rt(task)->go) { */ | ||
466 | /* remove((rt_domain_t*)dom->data, task); */ | ||
467 | /* } else if (is_queued(task)) { */ | ||
468 | /* VTRACE_TASK(task, "Did not remove cause of nogo\n"); */ | ||
469 | /* } */ | ||
470 | } | 455 | } |
471 | 456 | ||
472 | /* pd_domain_init - create a generic domain wrapper for an rt_domain | 457 | /* pd_domain_init - create a generic domain wrapper for an rt_domain |
diff --git a/litmus/sched_mc.c b/litmus/sched_mc.c index da8a82119612..a81d0bf0e7c6 100644 --- a/litmus/sched_mc.c +++ b/litmus/sched_mc.c | |||
@@ -607,6 +607,7 @@ static void job_completion(struct task_struct *task, int forced) | |||
607 | 607 | ||
608 | /* if (!is_ghost(task)) { */ | 608 | /* if (!is_ghost(task)) { */ |
609 | /* and no more forced!!! */ | 609 | /* and no more forced!!! */ |
610 | if (!ghost && !forced) | ||
610 | sched_trace_task_completion(task, forced); | 611 | sched_trace_task_completion(task, forced); |
611 | /* } */ | 612 | /* } */ |
612 | BUG_ON(!task); | 613 | BUG_ON(!task); |