diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2010-01-19 16:09:11 +0100 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2010-02-21 20:20:10 +0100 |
commit | 6640be50e8a2f9bd526beddafd23b49406a4af07 (patch) | |
tree | 3a2cef9f3b60fd9edeea265e3ec6226e421e356a /kernel/sched_fair.c | |
parent | 57bba6a44244a9c7cef5951041bdd3f747b28ed0 (diff) | |
download | lwn-6640be50e8a2f9bd526beddafd23b49406a4af07.tar.gz lwn-6640be50e8a2f9bd526beddafd23b49406a4af07.zip |
sched: Extend enqueue_task to allow head queueing
The ability of enqueueing a task to the head of a SCHED_FIFO priority
list is required to fix some violations of POSIX scheduling policy.
Extend the related functions with a "head" argument.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'kernel/sched_fair.c')
-rw-r--r-- | kernel/sched_fair.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/sched_fair.c b/kernel/sched_fair.c index be1772e37dc3..cff45e488188 100644 --- a/kernel/sched_fair.c +++ b/kernel/sched_fair.c @@ -1057,7 +1057,8 @@ static inline void hrtick_update(struct rq *rq) * increased. Here we update the fair scheduling stats and * then put the task into the rbtree: */ -static void enqueue_task_fair(struct rq *rq, struct task_struct *p, int wakeup) +static void +enqueue_task_fair(struct rq *rq, struct task_struct *p, int wakeup, bool head) { struct cfs_rq *cfs_rq; struct sched_entity *se = &p->se; |