aboutsummaryrefslogtreecommitdiffstats
path: root/litmus
diff options
context:
space:
mode:
authorJonathan Herman <hermanjl@cs.unc.edu>2011-09-08 15:16:29 -0400
committerJonathan Herman <hermanjl@cs.unc.edu>2011-09-08 15:16:29 -0400
commit653bad9ce0539ce350713700be8eb2539aec72d4 (patch)
treeae4c4519a050a7d8403d193369be3ff6a4160010 /litmus
parent13bd30ca0d37239a3755c25748ded00c265bcc58 (diff)
Removed outdated logic from wake_up method
Diffstat (limited to 'litmus')
-rw-r--r--litmus/sched_mc.c23
1 files changed, 5 insertions, 18 deletions
diff --git a/litmus/sched_mc.c b/litmus/sched_mc.c
index 99c1007d20c2..0f6c052aad20 100644
--- a/litmus/sched_mc.c
+++ b/litmus/sched_mc.c
@@ -542,24 +542,11 @@ static void mc_task_wake_up(struct task_struct *task)
542 raw_spin_lock_irqsave(&global_lock, flags); 542 raw_spin_lock_irqsave(&global_lock, flags);
543 TRACE_TASK(task, "Wakes up"); 543 TRACE_TASK(task, "Wakes up");
544 544
545 /* We need to take suspensions because of semaphores into 545 now = litmus_clock();
546 * account! If a job resumes after being suspended due to acquiring 546 if (is_tardy(task, now)) {
547 * a semaphore, it should never be treated as a new job release. 547 /* Task missed its last release */
548 */ 548 release_at(task, now);
549 if (get_rt_flags(task) == RT_F_EXIT_SEM) { 549 sched_trace_task_release(task);
550 set_rt_flags(task, RT_F_RUNNING);
551 } else {
552 now = litmus_clock();
553 if (is_tardy(task, now)) {
554 /* New sporadic release */
555 release_at(task, now);
556 sched_trace_task_release(task);
557 } else {
558 if (task->rt.time_slice) {
559 /* Came back in time before deadline */
560 set_rt_flags(task, RT_F_RUNNING);
561 }
562 }
563 } 550 }
564 551
565 if (!is_ghost(task)) 552 if (!is_ghost(task))