aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBjoern Brandenburg <bbb@mpi-sws.org>2014-06-12 08:05:51 -0400
committerNamhoon Kim <namhoonk@cs.unc.edu>2014-10-21 10:08:43 -0400
commit5b564e918add09d778ae347e9fdd005a36f8e879 (patch)
tree11b5cfc29a29bfaab6bc76a3fcaa38b7c870fb28
parent3e37b4b502634d6598bbc45d89fef854a2a13ae6 (diff)
PFAIR: set release time of new tasks
Without a proper release time, the job will be considered "lagging behind" for quite a while, which breaks the period enforcement. This bug manifested only in the absence of a synchronous release (which set a proper release time). This patch simply sets the beginning of the next quantum as the release time of the first job of a newly added task.
-rw-r--r--litmus/sched_pfair.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/litmus/sched_pfair.c b/litmus/sched_pfair.c
index 91f1e08cdd5c..54fa36c35344 100644
--- a/litmus/sched_pfair.c
+++ b/litmus/sched_pfair.c
@@ -696,6 +696,7 @@ static void pfair_task_new(struct task_struct * t, int on_rq, int is_scheduled)
696 raw_spin_lock_irqsave(cluster_lock(cluster), flags); 696 raw_spin_lock_irqsave(cluster_lock(cluster), flags);
697 697
698 prepare_release(t, cluster->pfair_time + 1); 698 prepare_release(t, cluster->pfair_time + 1);
699 release_at(t, quanta2time(cur_release(t)));
699 700
700 t->rt_param.scheduled_on = NO_CPU; 701 t->rt_param.scheduled_on = NO_CPU;
701 t->rt_param.linked_on = NO_CPU; 702 t->rt_param.linked_on = NO_CPU;