aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBjoern Brandenburg <bbb@mpi-sws.org>2014-06-12 08:05:51 -0400
committerBjoern Brandenburg <bbb@mpi-sws.org>2014-06-12 08:05:51 -0400
commit18d9c41cb971a2743b9c077a093e56bea41e45a5 (patch)
treefc1f72e8463d631e094c74dc13ae82240c080fd1
parent4faf914b04cbecb9184f6f939e87a3b4cb49c614 (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;