Skip to content

Commit

Permalink
sched: Use task_contributes_to_load, TASK_ALL and TASK_NORMAL
Browse files Browse the repository at this point in the history
Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
  • Loading branch information
Matthew Wilcox authored and Matthew Wilcox committed Dec 6, 2007
1 parent 6618a3e commit d9514f6
Showing 1 changed file with 5 additions and 8 deletions.
13 changes: 5 additions & 8 deletions kernel/sched.c
Original file line number Diff line number Diff line change
Expand Up @@ -992,7 +992,7 @@ static int effective_prio(struct task_struct *p)
*/
static void activate_task(struct rq *rq, struct task_struct *p, int wakeup)
{
if (p->state == TASK_UNINTERRUPTIBLE)
if (task_contributes_to_load(p))
rq->nr_uninterruptible--;

enqueue_task(rq, p, wakeup);
Expand All @@ -1004,7 +1004,7 @@ static void activate_task(struct rq *rq, struct task_struct *p, int wakeup)
*/
static void deactivate_task(struct rq *rq, struct task_struct *p, int sleep)
{
if (p->state == TASK_UNINTERRUPTIBLE)
if (task_contributes_to_load(p))
rq->nr_uninterruptible++;

dequeue_task(rq, p, sleep);
Expand Down Expand Up @@ -1646,8 +1646,7 @@ static int try_to_wake_up(struct task_struct *p, unsigned int state, int sync)

int fastcall wake_up_process(struct task_struct *p)
{
return try_to_wake_up(p, TASK_STOPPED | TASK_TRACED |
TASK_INTERRUPTIBLE | TASK_UNINTERRUPTIBLE, 0);
return try_to_wake_up(p, TASK_ALL, 0);
}
EXPORT_SYMBOL(wake_up_process);

Expand Down Expand Up @@ -3857,8 +3856,7 @@ void complete(struct completion *x)

spin_lock_irqsave(&x->wait.lock, flags);
x->done++;
__wake_up_common(&x->wait, TASK_UNINTERRUPTIBLE | TASK_INTERRUPTIBLE,
1, 0, NULL);
__wake_up_common(&x->wait, TASK_NORMAL, 1, 0, NULL);
spin_unlock_irqrestore(&x->wait.lock, flags);
}
EXPORT_SYMBOL(complete);
Expand All @@ -3869,8 +3867,7 @@ void complete_all(struct completion *x)

spin_lock_irqsave(&x->wait.lock, flags);
x->done += UINT_MAX/2;
__wake_up_common(&x->wait, TASK_UNINTERRUPTIBLE | TASK_INTERRUPTIBLE,
0, 0, NULL);
__wake_up_common(&x->wait, TASK_NORMAL, 0, 0, NULL);
spin_unlock_irqrestore(&x->wait.lock, flags);
}
EXPORT_SYMBOL(complete_all);
Expand Down

0 comments on commit d9514f6

Please sign in to comment.