Commit b684b67a authored by Ingo Molnar's avatar Ingo Molnar Committed by Linus Torvalds

[PATCH] NUMA scheduler breakage

__activate_task() and wake_up_forked_process() should call
nr_running_inc(rq) rather than doing a rq->nr_running++.

Noted by Rick Lindsley
parent 72cc0b8a
...@@ -326,7 +326,7 @@ static inline int effective_prio(task_t *p) ...@@ -326,7 +326,7 @@ static inline int effective_prio(task_t *p)
static inline void __activate_task(task_t *p, runqueue_t *rq) static inline void __activate_task(task_t *p, runqueue_t *rq)
{ {
enqueue_task(p, rq->active); enqueue_task(p, rq->active);
rq->nr_running++; nr_running_inc(rq);
} }
static inline void activate_task(task_t *p, runqueue_t *rq) static inline void activate_task(task_t *p, runqueue_t *rq)
...@@ -546,7 +546,7 @@ void wake_up_forked_process(task_t * p) ...@@ -546,7 +546,7 @@ void wake_up_forked_process(task_t * p)
list_add_tail(&p->run_list, &current->run_list); list_add_tail(&p->run_list, &current->run_list);
p->array = current->array; p->array = current->array;
p->array->nr_active++; p->array->nr_active++;
rq->nr_running++; nr_running_inc(rq);
} }
task_rq_unlock(rq, &flags); task_rq_unlock(rq, &flags);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment